pricehubble 2.3.0 → 2.4.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: 89f3b68ce765efc6959c7c69cd2aabc052c4bc89bfd0f1a0a0b3e6f49f807d6f
4
- data.tar.gz: 9d5f1b942cceb09a113bc133844f3e7b83cf6288da3fc6b659b056eef628d4cd
3
+ metadata.gz: 4727dc705bf4b4b21d723bebff1888256dc5d218cfc183467d39225fbc2eae5b
4
+ data.tar.gz: e67125aac8669b4c9212b1dc3cb53b1d04f26e51649e23b02956195b0628bdee
5
5
  SHA512:
6
- metadata.gz: 8fc3f28932bcf73a079e64174fd02041361d9f243e8923b516cc264822cad0e68588c3721fe04ea72415d669abfb7eb918729757eae95f75d2ffadefbc06ce34
7
- data.tar.gz: 6ac02c81da2f70cfed922a3343058b600849dfbb67a89b84b35db4707b15fbf5d8beacb6507dbf4f2035b8536943c39f23266aa2d126b0b55359c9b76519fe56
6
+ metadata.gz: a5660a412f8a0efc7a4b95a15f0f89968e3a758b3f12643cbb2ed9613416674f310a1e18749a6a38c8aee7eea57410fcaa8478c39226af3d45878ef89173d184
7
+ data.tar.gz: '05197d5e0a680dd273cfd0a8c23756e0eeccdd228800a318d2e6d6d3bc6cf27cc1cc94993ec4a7d0621e7667f1af3b2b8380177298b94a1407af7a7a0e637995'
@@ -15,10 +15,16 @@ concurrency:
15
15
  jobs:
16
16
  docs:
17
17
  name: Release the gem
18
- runs-on: ubuntu-22.04
18
+ runs-on: ubuntu-24.04
19
19
  timeout-minutes: 10
20
20
  steps:
21
- - uses: actions/checkout@v4
21
+ - name: Prepare the environment
22
+ uses: hausgold/actions/ci@v2
23
+ with:
24
+ clone_token: '${{ secrets.CLONE_TOKEN }}'
25
+ settings_secret_key: '${{ secrets.SETTINGS_SECRET_KEY }}'
26
+ settings: '${{ github.repository }}'
27
+ target: ci/gem-test
22
28
 
23
29
  - name: Install Ruby 3.3
24
30
  uses: ruby/setup-ruby@v1
@@ -27,14 +33,6 @@ jobs:
27
33
  bundler-cache: true
28
34
  rubygems: '3.6.9'
29
35
 
30
- - name: Prepare the virtual environment
31
- uses: hausgold/actions/ci@master
32
- with:
33
- clone_token: '${{ secrets.CLONE_TOKEN }}'
34
- settings_secret_key: '${{ secrets.SETTINGS_SECRET_KEY }}'
35
- settings: '${{ github.repository }}'
36
- target: ci/gem-test
37
-
38
36
  - name: Switch to SSH remotes for the Git repository
39
37
  run: git-ssh-remotes
40
38
 
@@ -13,17 +13,24 @@ concurrency:
13
13
  jobs:
14
14
  test:
15
15
  name: 'Test the gem (Ruby ${{ matrix.ruby }}, Rails ${{ matrix.rails }})'
16
- runs-on: ubuntu-22.04
16
+ runs-on: ubuntu-24.04
17
17
  timeout-minutes: 5
18
18
  strategy:
19
19
  fail-fast: false
20
20
  matrix:
21
21
  ruby: ['3.3', '3.4', '4.0']
22
22
  rails: ['7.2', '8.0', '8.1']
23
+ continue-on-error: ${{ matrix.ruby == '4.0' }}
23
24
  env:
24
25
  BUNDLE_GEMFILE: 'gemfiles/rails_${{ matrix.rails }}.gemfile'
25
26
  steps:
26
- - uses: actions/checkout@v4
27
+ - name: Prepare the environment
28
+ uses: hausgold/actions/ci@v2
29
+ with:
30
+ clone_token: '${{ secrets.CLONE_TOKEN }}'
31
+ settings_secret_key: '${{ secrets.SETTINGS_SECRET_KEY }}'
32
+ settings: '${{ github.repository }}'
33
+ target: ci/gem-test
27
34
 
28
35
  - name: Install the correct Ruby version
29
36
  uses: ruby/setup-ruby@v1
@@ -32,14 +39,6 @@ jobs:
32
39
  bundler-cache: true
33
40
  rubygems: '3.6.9'
34
41
 
35
- - name: Prepare the virtual environment
36
- uses: hausgold/actions/ci@master
37
- with:
38
- clone_token: '${{ secrets.CLONE_TOKEN }}'
39
- settings_secret_key: '${{ secrets.SETTINGS_SECRET_KEY }}'
40
- settings: '${{ github.repository }}'
41
- target: ci/gem-test
42
-
43
42
  - name: Run the gem tests
44
43
  run: make test
45
44
 
data/.rubocop.yml CHANGED
@@ -2,6 +2,10 @@ inherit_from:
2
2
  - https://potpourri.hausgold.de/config/rubocop.yml
3
3
  - https://potpourri.hausgold.de/config/rubocop-gem.yml
4
4
 
5
+ inherit_mode:
6
+ merge:
7
+ - Exclude
8
+
5
9
  plugins:
6
10
  - rubocop-rspec
7
11
  - rubocop-rails
data/CHANGELOG.md CHANGED
@@ -2,6 +2,12 @@
2
2
 
3
3
  * TODO: Replace this bullet point with an actual description of a change.
4
4
 
5
+ ### 2.4.0 (5 January 2026)
6
+
7
+ * Upgraded to Ubuntu 24.04 on Github Actions ([#26](https://github.com/hausgold/pricehubble/pull/26))
8
+ * Migrated to hausgold/actions@v2 ([#25](https://github.com/hausgold/pricehubble/pull/25))
9
+ * Upgraded to Faraday 2 ([#24](https://github.com/hausgold/pricehubble/pull/24))
10
+
5
11
  ### 2.3.0 (26 December 2025)
6
12
 
7
13
  * Added Ruby 4.0 support ([#23](https://github.com/hausgold/pricehubble/pull/23))
data/LICENSE CHANGED
@@ -1,6 +1,6 @@
1
1
  MIT License
2
2
 
3
- Copyright (c) 2025 HAUSGOLD | talocasa GmbH
3
+ Copyright (c) 2026 HAUSGOLD | talocasa GmbH
4
4
 
5
5
  Permission is hereby granted, free of charge, to any person obtaining a copy
6
6
  of this software and associated documentation files (the "Software"), to deal
@@ -24,9 +24,8 @@ module PriceHubble
24
24
  #
25
25
  # @param con [Faraday::Connection] the connection object
26
26
  def configure(con)
27
- con.use :instrumentation
28
-
29
27
  # The definition order is execution order
28
+ con.request :instrumentation
30
29
  con.request :ph_data_sanitization
31
30
  con.request :ph_default_headers
32
31
  con.request :json
@@ -36,7 +35,7 @@ module PriceHubble
36
35
  # The definition order is reverse to the execution order
37
36
  con.response :ph_recursive_open_struct
38
37
  con.response :ph_data_sanitization
39
- con.response :dates
38
+ con.response :parse_dates
40
39
  con.response :json, content_type: /\bjson$/
41
40
  con.response :follow_redirects
42
41
 
@@ -3,7 +3,7 @@
3
3
  # The gem version details.
4
4
  module PriceHubble
5
5
  # The version of the +price-hubble+ gem
6
- VERSION = '2.3.0'
6
+ VERSION = '2.4.0'
7
7
 
8
8
  class << self
9
9
  # Returns the version of gem as a string.
data/lib/price_hubble.rb CHANGED
@@ -15,7 +15,9 @@ require 'active_support/core_ext/string'
15
15
  require 'active_model'
16
16
  require 'recursive-open-struct'
17
17
  require 'faraday'
18
- require 'faraday_middleware'
18
+ require 'faraday/multipart'
19
+ require 'faraday/follow_redirects'
20
+ require 'faraday/parse_dates'
19
21
 
20
22
  # The top level namespace for the PriceHubble gem.
21
23
  module PriceHubble
data/pricehubble.gemspec CHANGED
@@ -35,8 +35,10 @@ Gem::Specification.new do |spec|
35
35
 
36
36
  spec.add_dependency 'activemodel', '>= 7.2'
37
37
  spec.add_dependency 'activesupport', '>= 7.2'
38
- spec.add_dependency 'faraday', '~> 1.0'
39
- spec.add_dependency 'faraday_middleware', '~> 1.0'
38
+ spec.add_dependency 'faraday', '~> 2.14'
39
+ spec.add_dependency 'faraday-follow_redirects', '>= 0.5.0'
40
+ spec.add_dependency 'faraday-multipart', '~> 1.2'
41
+ spec.add_dependency 'faraday-parse_dates', '>= 0.1.1'
40
42
  spec.add_dependency 'mutex_m', '>= 0.3'
41
43
  spec.add_dependency 'recursive-open-struct', '~> 2.0'
42
44
  spec.add_dependency 'zeitwerk', '~> 2.6'
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: pricehubble
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.3.0
4
+ version: 2.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Hermann Mayer
@@ -43,28 +43,56 @@ dependencies:
43
43
  requirements:
44
44
  - - "~>"
45
45
  - !ruby/object:Gem::Version
46
- version: '1.0'
46
+ version: '2.14'
47
47
  type: :runtime
48
48
  prerelease: false
49
49
  version_requirements: !ruby/object:Gem::Requirement
50
50
  requirements:
51
51
  - - "~>"
52
52
  - !ruby/object:Gem::Version
53
- version: '1.0'
53
+ version: '2.14'
54
54
  - !ruby/object:Gem::Dependency
55
- name: faraday_middleware
55
+ name: faraday-follow_redirects
56
+ requirement: !ruby/object:Gem::Requirement
57
+ requirements:
58
+ - - ">="
59
+ - !ruby/object:Gem::Version
60
+ version: 0.5.0
61
+ type: :runtime
62
+ prerelease: false
63
+ version_requirements: !ruby/object:Gem::Requirement
64
+ requirements:
65
+ - - ">="
66
+ - !ruby/object:Gem::Version
67
+ version: 0.5.0
68
+ - !ruby/object:Gem::Dependency
69
+ name: faraday-multipart
56
70
  requirement: !ruby/object:Gem::Requirement
57
71
  requirements:
58
72
  - - "~>"
59
73
  - !ruby/object:Gem::Version
60
- version: '1.0'
74
+ version: '1.2'
61
75
  type: :runtime
62
76
  prerelease: false
63
77
  version_requirements: !ruby/object:Gem::Requirement
64
78
  requirements:
65
79
  - - "~>"
66
80
  - !ruby/object:Gem::Version
67
- version: '1.0'
81
+ version: '1.2'
82
+ - !ruby/object:Gem::Dependency
83
+ name: faraday-parse_dates
84
+ requirement: !ruby/object:Gem::Requirement
85
+ requirements:
86
+ - - ">="
87
+ - !ruby/object:Gem::Version
88
+ version: 0.1.1
89
+ type: :runtime
90
+ prerelease: false
91
+ version_requirements: !ruby/object:Gem::Requirement
92
+ requirements:
93
+ - - ">="
94
+ - !ruby/object:Gem::Version
95
+ version: 0.1.1
68
96
  - !ruby/object:Gem::Dependency
69
97
  name: mutex_m
70
98
  requirement: !ruby/object:Gem::Requirement