pricehubble 1.6.1 → 2.1.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 +4 -4
- data/.github/workflows/release.yml +4 -4
- data/.github/workflows/test.yml +3 -3
- data/.rubocop.yml +8 -2
- data/Appraisals +15 -5
- data/CHANGELOG.md +11 -0
- data/Dockerfile +3 -3
- data/Gemfile +2 -2
- data/Makefile +1 -1
- data/doc/examples/config.rb +2 -0
- data/docker-compose.yml +0 -1
- data/gemfiles/rails_7.1.gemfile +2 -2
- data/gemfiles/rails_7.2.gemfile +26 -0
- data/gemfiles/rails_8.0.gemfile +26 -0
- data/gemfiles/rails_8.1.gemfile +26 -0
- data/lib/price_hubble/configuration.rb +40 -2
- data/lib/price_hubble/entity/concern/associations.rb +8 -3
- data/lib/price_hubble/version.rb +1 -1
- data/lib/price_hubble.rb +4 -3
- data/pricehubble.gemspec +4 -4
- metadata +15 -16
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: f9efa889dd5ba50585f840c63123cca87ae54fdf1730d730d1e63406c6272250
|
|
4
|
+
data.tar.gz: 7290470461e267bbbc0d427b0cbbb79daf87e3b8e12746e0fd05a97289b252ee
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 7512e734fc788465d8f61cd36d71fe50686f4f855e8de0be3ea996c0866668fd9594162c09d75bbc3155542d879378f74d1d37fb797a6dfebb1c8a2f4c02d870
|
|
7
|
+
data.tar.gz: b8a638e5ac5f70ceeb56b25ba2a63a77a41880990a6503553e37eebf32f69e13467307114a57e2bd082e41d78c0c6e4488d3d3b2115bf01362a20f797c321387
|
|
@@ -16,16 +16,16 @@ jobs:
|
|
|
16
16
|
docs:
|
|
17
17
|
name: Release the gem
|
|
18
18
|
runs-on: ubuntu-22.04
|
|
19
|
-
timeout-minutes:
|
|
19
|
+
timeout-minutes: 10
|
|
20
20
|
steps:
|
|
21
21
|
- uses: actions/checkout@v4
|
|
22
22
|
|
|
23
|
-
- name: Install Ruby 2
|
|
23
|
+
- name: Install Ruby 3.2
|
|
24
24
|
uses: ruby/setup-ruby@v1
|
|
25
25
|
with:
|
|
26
|
-
ruby-version: 2
|
|
26
|
+
ruby-version: 3.2
|
|
27
27
|
bundler-cache: true
|
|
28
|
-
rubygems: '3.
|
|
28
|
+
rubygems: '3.6.9'
|
|
29
29
|
|
|
30
30
|
- name: Prepare the virtual environment
|
|
31
31
|
uses: hausgold/actions/ci@master
|
data/.github/workflows/test.yml
CHANGED
|
@@ -18,8 +18,8 @@ jobs:
|
|
|
18
18
|
strategy:
|
|
19
19
|
fail-fast: false
|
|
20
20
|
matrix:
|
|
21
|
-
ruby: ['
|
|
22
|
-
rails: ['
|
|
21
|
+
ruby: ['3.2', '3.3', '3.4']
|
|
22
|
+
rails: ['7.1', '7.2', '8.0', '8.1']
|
|
23
23
|
env:
|
|
24
24
|
BUNDLE_GEMFILE: 'gemfiles/rails_${{ matrix.rails }}.gemfile'
|
|
25
25
|
steps:
|
|
@@ -30,7 +30,7 @@ jobs:
|
|
|
30
30
|
with:
|
|
31
31
|
ruby-version: ${{ matrix.ruby }}
|
|
32
32
|
bundler-cache: true
|
|
33
|
-
rubygems: '3.
|
|
33
|
+
rubygems: '3.6.9'
|
|
34
34
|
|
|
35
35
|
- name: Prepare the virtual environment
|
|
36
36
|
uses: hausgold/actions/ci@master
|
data/.rubocop.yml
CHANGED
|
@@ -12,8 +12,8 @@ AllCops:
|
|
|
12
12
|
NewCops: enable
|
|
13
13
|
SuggestExtensions: false
|
|
14
14
|
DisplayCopNames: true
|
|
15
|
-
TargetRubyVersion: 2
|
|
16
|
-
TargetRailsVersion:
|
|
15
|
+
TargetRubyVersion: 3.2
|
|
16
|
+
TargetRailsVersion: 7.1
|
|
17
17
|
Exclude:
|
|
18
18
|
- bin/**/*
|
|
19
19
|
- vendor/**/*
|
|
@@ -94,3 +94,9 @@ Rails/ReflectionClassName:
|
|
|
94
94
|
# So just disabling it for now.
|
|
95
95
|
Style/DocumentDynamicEvalDefinition:
|
|
96
96
|
Enabled: false
|
|
97
|
+
|
|
98
|
+
# For our examples it's fine to use +pp+ and +puts+,
|
|
99
|
+
# as they are living examples.
|
|
100
|
+
Rails/Output:
|
|
101
|
+
Exclude:
|
|
102
|
+
- doc/examples/**/*
|
data/Appraisals
CHANGED
|
@@ -1,11 +1,21 @@
|
|
|
1
1
|
# frozen_string_literal: true
|
|
2
2
|
|
|
3
|
-
appraise 'rails-6.1' do
|
|
4
|
-
gem 'activemodel', '~> 6.1.0'
|
|
5
|
-
gem 'activesupport', '~> 6.1.0'
|
|
6
|
-
end
|
|
7
|
-
|
|
8
3
|
appraise 'rails-7.1' do
|
|
9
4
|
gem 'activemodel', '~> 7.1.0'
|
|
10
5
|
gem 'activesupport', '~> 7.1.0'
|
|
11
6
|
end
|
|
7
|
+
|
|
8
|
+
appraise 'rails-7.2' do
|
|
9
|
+
gem 'activemodel', '~> 7.2.0'
|
|
10
|
+
gem 'activesupport', '~> 7.2.0'
|
|
11
|
+
end
|
|
12
|
+
|
|
13
|
+
appraise 'rails-8.0' do
|
|
14
|
+
gem 'activemodel', '~> 8.0.0'
|
|
15
|
+
gem 'activesupport', '~> 8.0.0'
|
|
16
|
+
end
|
|
17
|
+
|
|
18
|
+
appraise 'rails-8.1' do
|
|
19
|
+
gem 'activemodel', '~> 8.1.0'
|
|
20
|
+
gem 'activesupport', '~> 8.1.0'
|
|
21
|
+
end
|
data/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,17 @@
|
|
|
2
2
|
|
|
3
3
|
* TODO: Replace this bullet point with an actual description of a change.
|
|
4
4
|
|
|
5
|
+
### 2.1.0 (23 October 2025)
|
|
6
|
+
|
|
7
|
+
* Added support for Rails 8.1 ([#19](https://github.com/hausgold/pricehubble/pull/19))
|
|
8
|
+
* Switched from `ActiveSupport::Configurable` to a custom implementation based
|
|
9
|
+
on `ActiveSupport::OrderedOptions` ([#20](https://github.com/hausgold/pricehubble/pull/20))
|
|
10
|
+
|
|
11
|
+
### 2.0.0 (28 June 2025)
|
|
12
|
+
|
|
13
|
+
* Corrected some RuboCop glitches ([#17](https://github.com/hausgold/pricehubble/pull/17))
|
|
14
|
+
* Drop Ruby 2 and end of life Rails (<7.1) ([#18](https://github.com/hausgold/pricehubble/pull/18))
|
|
15
|
+
|
|
5
16
|
### 1.6.1 (21 May 2025)
|
|
6
17
|
|
|
7
18
|
* Corrected some RuboCop glitches ([#15](https://github.com/hausgold/pricehubble/pull/15))
|
data/Dockerfile
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
FROM hausgold/ruby:2
|
|
1
|
+
FROM hausgold/ruby:3.2
|
|
2
2
|
LABEL org.opencontainers.image.authors="containers@hausgold.de"
|
|
3
3
|
|
|
4
4
|
# Update system gem
|
|
5
|
-
RUN gem update --system '3.
|
|
5
|
+
RUN gem update --system '3.6.9'
|
|
6
6
|
|
|
7
7
|
# Install system packages and the latest bundler
|
|
8
8
|
RUN apt-get update -yqqq && \
|
|
@@ -11,7 +11,7 @@ RUN apt-get update -yqqq && \
|
|
|
11
11
|
ca-certificates \
|
|
12
12
|
bash-completion inotify-tools && \
|
|
13
13
|
echo 'en_US.UTF-8 UTF-8' >> /etc/locale.gen && /usr/sbin/locale-gen && \
|
|
14
|
-
gem install bundler -v '~> 2.
|
|
14
|
+
gem install bundler -v '~> 2.6.9' --no-document --no-prerelease
|
|
15
15
|
|
|
16
16
|
# Add new web user
|
|
17
17
|
RUN mkdir /app && \
|
data/Gemfile
CHANGED
|
@@ -9,8 +9,8 @@ gemspec
|
|
|
9
9
|
|
|
10
10
|
# Development dependencies
|
|
11
11
|
gem 'appraisal', '~> 2.4'
|
|
12
|
-
gem 'bundler', '~> 2.
|
|
13
|
-
gem 'countless', '~>
|
|
12
|
+
gem 'bundler', '~> 2.6'
|
|
13
|
+
gem 'countless', '~> 2.2'
|
|
14
14
|
# TODO: Remove the upper lock when
|
|
15
15
|
# https://github.com/thoughtbot/factory_bot/issues/1614 is solved.
|
|
16
16
|
gem 'factory_bot', '~> 6.2', '< 6.4.5'
|
data/Makefile
CHANGED
|
@@ -117,7 +117,7 @@ test-style: \
|
|
|
117
117
|
test-style-ruby:
|
|
118
118
|
# Run the static code analyzer (rubocop)
|
|
119
119
|
@$(call run-shell,$(BUNDLE) exec $(RUBOCOP) -a \
|
|
120
|
-
|| ($(TEST) $$($(RUBY_VERSION)) != '2
|
|
120
|
+
|| ($(TEST) $$($(RUBY_VERSION)) != '3.2' && true))
|
|
121
121
|
|
|
122
122
|
clean:
|
|
123
123
|
# Clean the dependencies
|
data/doc/examples/config.rb
CHANGED
|
@@ -20,6 +20,7 @@ if ENV['PRICEHUBBLE_PASSWORD'].blank?
|
|
|
20
20
|
puts '> [ERR] Environment variable `PRICEHUBBLE_PASSWORD` is missing.'
|
|
21
21
|
end
|
|
22
22
|
|
|
23
|
+
# rubocop:disable Rails/Exit -- because we're not in a Rails application here
|
|
23
24
|
if errors
|
|
24
25
|
puts
|
|
25
26
|
puts '> Usage:'
|
|
@@ -28,3 +29,4 @@ if errors
|
|
|
28
29
|
puts "> $ #{$PROGRAM_NAME} #{ARGV.join(' ')}"
|
|
29
30
|
exit
|
|
30
31
|
end
|
|
32
|
+
# rubocop:enable Rails/Exit
|
data/docker-compose.yml
CHANGED
data/gemfiles/rails_7.1.gemfile
CHANGED
|
@@ -3,8 +3,8 @@
|
|
|
3
3
|
source "https://rubygems.org"
|
|
4
4
|
|
|
5
5
|
gem "appraisal", "~> 2.4"
|
|
6
|
-
gem "bundler", "~> 2.
|
|
7
|
-
gem "countless", "~>
|
|
6
|
+
gem "bundler", "~> 2.6"
|
|
7
|
+
gem "countless", "~> 2.2"
|
|
8
8
|
gem "factory_bot", "~> 6.2", "< 6.4.5"
|
|
9
9
|
gem "guard-rspec", "~> 4.7"
|
|
10
10
|
gem "rake", "~> 13.0"
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
# This file was generated by Appraisal
|
|
2
|
+
|
|
3
|
+
source "https://rubygems.org"
|
|
4
|
+
|
|
5
|
+
gem "appraisal", "~> 2.4"
|
|
6
|
+
gem "bundler", "~> 2.6"
|
|
7
|
+
gem "countless", "~> 2.2"
|
|
8
|
+
gem "factory_bot", "~> 6.2", "< 6.4.5"
|
|
9
|
+
gem "guard-rspec", "~> 4.7"
|
|
10
|
+
gem "rake", "~> 13.0"
|
|
11
|
+
gem "redcarpet", "~> 3.5"
|
|
12
|
+
gem "rspec", "~> 3.12"
|
|
13
|
+
gem "rubocop"
|
|
14
|
+
gem "rubocop-rails"
|
|
15
|
+
gem "rubocop-rspec"
|
|
16
|
+
gem "simplecov", ">= 0.22"
|
|
17
|
+
gem "terminal-table", "~> 3.0"
|
|
18
|
+
gem "timecop", ">= 0.9.6"
|
|
19
|
+
gem "vcr", "~> 6.0"
|
|
20
|
+
gem "webmock", "~> 3.18"
|
|
21
|
+
gem "yard", ">= 0.9.28"
|
|
22
|
+
gem "yard-activesupport-concern", ">= 0.0.1"
|
|
23
|
+
gem "activemodel", "~> 7.2.0"
|
|
24
|
+
gem "activesupport", "~> 7.2.0"
|
|
25
|
+
|
|
26
|
+
gemspec path: "../"
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
# This file was generated by Appraisal
|
|
2
|
+
|
|
3
|
+
source "https://rubygems.org"
|
|
4
|
+
|
|
5
|
+
gem "appraisal", "~> 2.4"
|
|
6
|
+
gem "bundler", "~> 2.6"
|
|
7
|
+
gem "countless", "~> 2.2"
|
|
8
|
+
gem "factory_bot", "~> 6.2", "< 6.4.5"
|
|
9
|
+
gem "guard-rspec", "~> 4.7"
|
|
10
|
+
gem "rake", "~> 13.0"
|
|
11
|
+
gem "redcarpet", "~> 3.5"
|
|
12
|
+
gem "rspec", "~> 3.12"
|
|
13
|
+
gem "rubocop"
|
|
14
|
+
gem "rubocop-rails"
|
|
15
|
+
gem "rubocop-rspec"
|
|
16
|
+
gem "simplecov", ">= 0.22"
|
|
17
|
+
gem "terminal-table", "~> 3.0"
|
|
18
|
+
gem "timecop", ">= 0.9.6"
|
|
19
|
+
gem "vcr", "~> 6.0"
|
|
20
|
+
gem "webmock", "~> 3.18"
|
|
21
|
+
gem "yard", ">= 0.9.28"
|
|
22
|
+
gem "yard-activesupport-concern", ">= 0.0.1"
|
|
23
|
+
gem "activemodel", "~> 8.0.0"
|
|
24
|
+
gem "activesupport", "~> 8.0.0"
|
|
25
|
+
|
|
26
|
+
gemspec path: "../"
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
# This file was generated by Appraisal
|
|
2
|
+
|
|
3
|
+
source "https://rubygems.org"
|
|
4
|
+
|
|
5
|
+
gem "appraisal", "~> 2.4"
|
|
6
|
+
gem "bundler", "~> 2.6"
|
|
7
|
+
gem "countless", "~> 2.2"
|
|
8
|
+
gem "factory_bot", "~> 6.2", "< 6.4.5"
|
|
9
|
+
gem "guard-rspec", "~> 4.7"
|
|
10
|
+
gem "rake", "~> 13.0"
|
|
11
|
+
gem "redcarpet", "~> 3.5"
|
|
12
|
+
gem "rspec", "~> 3.12"
|
|
13
|
+
gem "rubocop"
|
|
14
|
+
gem "rubocop-rails"
|
|
15
|
+
gem "rubocop-rspec"
|
|
16
|
+
gem "simplecov", ">= 0.22"
|
|
17
|
+
gem "terminal-table", "~> 3.0"
|
|
18
|
+
gem "timecop", ">= 0.9.6"
|
|
19
|
+
gem "vcr", "~> 6.0"
|
|
20
|
+
gem "webmock", "~> 3.18"
|
|
21
|
+
gem "yard", ">= 0.9.28"
|
|
22
|
+
gem "yard-activesupport-concern", ">= 0.0.1"
|
|
23
|
+
gem "activemodel", "~> 8.1.0"
|
|
24
|
+
gem "activesupport", "~> 8.1.0"
|
|
25
|
+
|
|
26
|
+
gemspec path: "../"
|
|
@@ -2,8 +2,46 @@
|
|
|
2
2
|
|
|
3
3
|
module PriceHubble
|
|
4
4
|
# The configuration for the pricehubble gem.
|
|
5
|
-
class Configuration
|
|
6
|
-
|
|
5
|
+
class Configuration < ActiveSupport::OrderedOptions
|
|
6
|
+
# Track our configurations settings (+Symbol+ keys) and their defaults as
|
|
7
|
+
# lazy-loaded +Proc+'s values
|
|
8
|
+
class_attribute :defaults,
|
|
9
|
+
instance_reader: true,
|
|
10
|
+
instance_writer: false,
|
|
11
|
+
instance_predicate: false,
|
|
12
|
+
default: {}
|
|
13
|
+
|
|
14
|
+
# Create a new +Configuration+ instance with all settings populated with
|
|
15
|
+
# their respective defaults.
|
|
16
|
+
#
|
|
17
|
+
# @param args [Hash{Symbol => Mixed}] additional settings which
|
|
18
|
+
# overwrite the defaults
|
|
19
|
+
# @return [Configuration] the new configuration instance
|
|
20
|
+
def initialize(**args)
|
|
21
|
+
super()
|
|
22
|
+
defaults.each { |key, default| self[key] = instance_exec(&default) }
|
|
23
|
+
merge!(**args)
|
|
24
|
+
end
|
|
25
|
+
|
|
26
|
+
# A simple DSL method to define new configuration accessors/settings with
|
|
27
|
+
# their defaults. The defaults can be retrieved with
|
|
28
|
+
# +Configuration.defaults+ or +Configuration.new.defaults+.
|
|
29
|
+
#
|
|
30
|
+
# @param name [Symbol, String] the name of the configuration
|
|
31
|
+
# accessor/setting
|
|
32
|
+
# @param default [Mixed, nil] a non-lazy-loaded static value, serving as a
|
|
33
|
+
# default value for the setting
|
|
34
|
+
# @param block [Proc] when given, the default value will be lazy-loaded
|
|
35
|
+
# (result of the Proc)
|
|
36
|
+
def self.config_accessor(name, default = nil, &block)
|
|
37
|
+
# Save the given configuration accessor default value
|
|
38
|
+
defaults[name.to_sym] = block || -> { default }
|
|
39
|
+
|
|
40
|
+
# Compile reader/writer methods so we don't have to go through
|
|
41
|
+
# +ActiveSupport::OrderedOptions#method_missing+.
|
|
42
|
+
define_method(name) { self[name] }
|
|
43
|
+
define_method("#{name}=") { |value| self[name] = value }
|
|
44
|
+
end
|
|
7
45
|
|
|
8
46
|
# Configure the API authentication credentials
|
|
9
47
|
config_accessor(:username) { ENV.fetch('PRICEHUBBLE_USERNAME', nil) }
|
|
@@ -120,8 +120,6 @@ module PriceHubble
|
|
|
120
120
|
# rubocop:enable Metrics/MethodLength
|
|
121
121
|
end
|
|
122
122
|
|
|
123
|
-
# rubocop:disable Naming/PredicateName -- because we follow known naming
|
|
124
|
-
# conventions
|
|
125
123
|
class_methods do
|
|
126
124
|
# Initialize the associations structures on an inherited class.
|
|
127
125
|
#
|
|
@@ -141,6 +139,9 @@ module PriceHubble
|
|
|
141
139
|
#
|
|
142
140
|
# @param entity [String, Symbol] the attribute/entity name
|
|
143
141
|
# @param args [Hash{Symbol => Mixed}] additional options
|
|
142
|
+
#
|
|
143
|
+
# rubocop:disable Naming/PredicatePrefix -- because we mimic the
|
|
144
|
+
# ActiveRecord API here
|
|
144
145
|
def has_one(entity, **args)
|
|
145
146
|
# Sanitize options
|
|
146
147
|
entity = entity.to_sym
|
|
@@ -160,6 +161,7 @@ module PriceHubble
|
|
|
160
161
|
# Add the entity to the tracked attributes if it should be persisted
|
|
161
162
|
tracked_attr entity if opts[:persist]
|
|
162
163
|
end
|
|
164
|
+
# rubocop:enable Naming/PredicatePrefix
|
|
163
165
|
|
|
164
166
|
# Define a simple +has_many+ association.
|
|
165
167
|
#
|
|
@@ -173,6 +175,9 @@ module PriceHubble
|
|
|
173
175
|
#
|
|
174
176
|
# @param entity [String, Symbol] the attribute/entity name
|
|
175
177
|
# @param args [Hash{Symbol => Mixed}] additional options
|
|
178
|
+
#
|
|
179
|
+
# rubocop:disable Naming/PredicatePrefix -- because we mimic the
|
|
180
|
+
# ActiveRecord API here
|
|
176
181
|
def has_many(entity, **args)
|
|
177
182
|
# Sanitize options
|
|
178
183
|
entity = entity.to_sym
|
|
@@ -192,8 +197,8 @@ module PriceHubble
|
|
|
192
197
|
# Add the entity to the tracked attributes if it should be persisted
|
|
193
198
|
tracked_attr entity if opts[:persist]
|
|
194
199
|
end
|
|
200
|
+
# rubocop:enable Naming/PredicatePrefix
|
|
195
201
|
end
|
|
196
|
-
# rubocop:enable Naming/PredicateName
|
|
197
202
|
end
|
|
198
203
|
end
|
|
199
204
|
end
|
data/lib/price_hubble/version.rb
CHANGED
data/lib/price_hubble.rb
CHANGED
|
@@ -4,9 +4,10 @@ require 'zeitwerk'
|
|
|
4
4
|
require 'logger'
|
|
5
5
|
require 'active_support'
|
|
6
6
|
require 'active_support/concern'
|
|
7
|
-
require 'active_support/
|
|
7
|
+
require 'active_support/ordered_options'
|
|
8
8
|
require 'active_support/time'
|
|
9
9
|
require 'active_support/time_with_zone'
|
|
10
|
+
require 'active_support/core_ext/class/attribute'
|
|
10
11
|
require 'active_support/core_ext/object'
|
|
11
12
|
require 'active_support/core_ext/module'
|
|
12
13
|
require 'active_support/core_ext/hash'
|
|
@@ -43,10 +44,10 @@ module PriceHubble
|
|
|
43
44
|
require 'price_hubble/railtie' if defined? Rails
|
|
44
45
|
|
|
45
46
|
# Load all core extension of the gem
|
|
46
|
-
Dir[root_path.join('core_ext/**/*.rb')].
|
|
47
|
+
Dir[root_path.join('core_ext/**/*.rb')].each { |path| require path }
|
|
47
48
|
|
|
48
49
|
# Load all initializers of the gem
|
|
49
|
-
Dir[root_path.join('initializers/**/*.rb')].
|
|
50
|
+
Dir[root_path.join('initializers/**/*.rb')].each { |path| require path }
|
|
50
51
|
|
|
51
52
|
# Include top-level features
|
|
52
53
|
include PriceHubble::ConfigurationHandling
|
data/pricehubble.gemspec
CHANGED
|
@@ -31,13 +31,13 @@ Gem::Specification.new do |spec|
|
|
|
31
31
|
spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
|
|
32
32
|
spec.require_paths = ['lib']
|
|
33
33
|
|
|
34
|
-
spec.required_ruby_version = '>= 2
|
|
34
|
+
spec.required_ruby_version = '>= 3.2'
|
|
35
35
|
|
|
36
|
-
spec.add_dependency 'activemodel', '>=
|
|
37
|
-
spec.add_dependency 'activesupport', '>=
|
|
36
|
+
spec.add_dependency 'activemodel', '>= 7.1'
|
|
37
|
+
spec.add_dependency 'activesupport', '>= 7.1'
|
|
38
38
|
spec.add_dependency 'faraday', '~> 1.0'
|
|
39
39
|
spec.add_dependency 'faraday_middleware', '~> 1.0'
|
|
40
|
-
spec.add_dependency 'mutex_m', '
|
|
40
|
+
spec.add_dependency 'mutex_m', '>= 0.3'
|
|
41
41
|
spec.add_dependency 'recursive-open-struct', '~> 2.0'
|
|
42
42
|
spec.add_dependency 'zeitwerk', '~> 2.6'
|
|
43
43
|
end
|
metadata
CHANGED
|
@@ -1,14 +1,13 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: pricehubble
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 1.
|
|
4
|
+
version: 2.1.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Hermann Mayer
|
|
8
|
-
autorequire:
|
|
9
8
|
bindir: exe
|
|
10
9
|
cert_chain: []
|
|
11
|
-
date:
|
|
10
|
+
date: 1980-01-02 00:00:00.000000000 Z
|
|
12
11
|
dependencies:
|
|
13
12
|
- !ruby/object:Gem::Dependency
|
|
14
13
|
name: activemodel
|
|
@@ -16,28 +15,28 @@ dependencies:
|
|
|
16
15
|
requirements:
|
|
17
16
|
- - ">="
|
|
18
17
|
- !ruby/object:Gem::Version
|
|
19
|
-
version: '
|
|
18
|
+
version: '7.1'
|
|
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: '
|
|
25
|
+
version: '7.1'
|
|
27
26
|
- !ruby/object:Gem::Dependency
|
|
28
27
|
name: activesupport
|
|
29
28
|
requirement: !ruby/object:Gem::Requirement
|
|
30
29
|
requirements:
|
|
31
30
|
- - ">="
|
|
32
31
|
- !ruby/object:Gem::Version
|
|
33
|
-
version: '
|
|
32
|
+
version: '7.1'
|
|
34
33
|
type: :runtime
|
|
35
34
|
prerelease: false
|
|
36
35
|
version_requirements: !ruby/object:Gem::Requirement
|
|
37
36
|
requirements:
|
|
38
37
|
- - ">="
|
|
39
38
|
- !ruby/object:Gem::Version
|
|
40
|
-
version: '
|
|
39
|
+
version: '7.1'
|
|
41
40
|
- !ruby/object:Gem::Dependency
|
|
42
41
|
name: faraday
|
|
43
42
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -70,16 +69,16 @@ dependencies:
|
|
|
70
69
|
name: mutex_m
|
|
71
70
|
requirement: !ruby/object:Gem::Requirement
|
|
72
71
|
requirements:
|
|
73
|
-
- - "
|
|
72
|
+
- - ">="
|
|
74
73
|
- !ruby/object:Gem::Version
|
|
75
|
-
version: 0.3
|
|
74
|
+
version: '0.3'
|
|
76
75
|
type: :runtime
|
|
77
76
|
prerelease: false
|
|
78
77
|
version_requirements: !ruby/object:Gem::Requirement
|
|
79
78
|
requirements:
|
|
80
|
-
- - "
|
|
79
|
+
- - ">="
|
|
81
80
|
- !ruby/object:Gem::Version
|
|
82
|
-
version: 0.3
|
|
81
|
+
version: '0.3'
|
|
83
82
|
- !ruby/object:Gem::Dependency
|
|
84
83
|
name: recursive-open-struct
|
|
85
84
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -150,6 +149,9 @@ files:
|
|
|
150
149
|
- docker-compose.yml
|
|
151
150
|
- gemfiles/rails_6.1.gemfile
|
|
152
151
|
- gemfiles/rails_7.1.gemfile
|
|
152
|
+
- gemfiles/rails_7.2.gemfile
|
|
153
|
+
- gemfiles/rails_8.0.gemfile
|
|
154
|
+
- gemfiles/rails_8.1.gemfile
|
|
153
155
|
- lib/price_hubble.rb
|
|
154
156
|
- lib/price_hubble/base_entity.rb
|
|
155
157
|
- lib/price_hubble/client.rb
|
|
@@ -199,7 +201,6 @@ files:
|
|
|
199
201
|
- lib/pricehubble
|
|
200
202
|
- lib/pricehubble.rb
|
|
201
203
|
- pricehubble.gemspec
|
|
202
|
-
homepage:
|
|
203
204
|
licenses:
|
|
204
205
|
- MIT
|
|
205
206
|
metadata:
|
|
@@ -208,7 +209,6 @@ metadata:
|
|
|
208
209
|
changelog_uri: https://github.com/hausgold/pricehubble/blob/master/CHANGELOG.md
|
|
209
210
|
bug_tracker_uri: https://github.com/hausgold/pricehubble/issues
|
|
210
211
|
documentation_uri: https://www.rubydoc.info/gems/pricehubble
|
|
211
|
-
post_install_message:
|
|
212
212
|
rdoc_options: []
|
|
213
213
|
require_paths:
|
|
214
214
|
- lib
|
|
@@ -216,15 +216,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
|
216
216
|
requirements:
|
|
217
217
|
- - ">="
|
|
218
218
|
- !ruby/object:Gem::Version
|
|
219
|
-
version: '2
|
|
219
|
+
version: '3.2'
|
|
220
220
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
|
221
221
|
requirements:
|
|
222
222
|
- - ">="
|
|
223
223
|
- !ruby/object:Gem::Version
|
|
224
224
|
version: '0'
|
|
225
225
|
requirements: []
|
|
226
|
-
rubygems_version: 3.
|
|
227
|
-
signing_key:
|
|
226
|
+
rubygems_version: 3.6.9
|
|
228
227
|
specification_version: 4
|
|
229
228
|
summary: Ruby client for the PriceHubble REST API
|
|
230
229
|
test_files: []
|