immoscout 1.9.0 → 2.0.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: cbd41f564b5adef8b572a52cca05f71987e4b3db6870e041eaa3b51f85dd9c7d
4
- data.tar.gz: b2840c2452513886054823f9b37cc7a8facb10e19f878ea0a698eb8551f88298
3
+ metadata.gz: 1e32ead7d9ecbf21a77e5d6fa74e2139732c2bc45c6d717dbe2e15fc4d83decc
4
+ data.tar.gz: a09b9b72b25701703612f2ae1e6c0fff912713616e34a0e8fcee993c4324a41e
5
5
  SHA512:
6
- metadata.gz: b44758c80b8e5c2b70762b2c4b5df70311162cc9e2486891634da19e422b44afe72534e0bfcc80628c7edb6414e29ab5b0cfa59b5608278439bc14fbd31cd711
7
- data.tar.gz: 2ebb7ccfa8b66516b527307516b64f54b04163d87f54dd72899e70aa3a7dc756c0247fa9c9ce75623b54efd909b32be36c6e2ee598a68a27f90be125bf5371b3
6
+ metadata.gz: 4dd40628d8b6f0e70840cb0020e527fe34b397c49fa1f4fca7a2f30dbbb173ba4d336ea73cebd83661959fbe481bfca4c8735b80e6386d335050c71335b15587
7
+ data.tar.gz: 5dcaa0ce884b9338208bdd43b544350da6ee775ff2434a2bb203ef1cc7c8427bb109fc9858b590dabdbdfecc148146392039f62db711bc8a80c5f16dc298b725
@@ -20,12 +20,12 @@ jobs:
20
20
  steps:
21
21
  - uses: actions/checkout@v4
22
22
 
23
- - name: Install Ruby 2.7
23
+ - name: Install Ruby 3.2
24
24
  uses: ruby/setup-ruby@v1
25
25
  with:
26
- ruby-version: 2.7
26
+ ruby-version: 3.2
27
27
  bundler-cache: true
28
- rubygems: '3.4.22'
28
+ rubygems: '3.6.9'
29
29
 
30
30
  - name: Prepare the virtual environment
31
31
  uses: hausgold/actions/ci@master
@@ -18,8 +18,8 @@ jobs:
18
18
  strategy:
19
19
  fail-fast: false
20
20
  matrix:
21
- ruby: ['2.7', '3.0', '3.1', '3.2', '3.3', '3.4']
22
- rails: ['6.1', '7.1']
21
+ ruby: ['3.2', '3.3', '3.4']
22
+ rails: ['7.1', '7.2', '8.0']
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.4.22'
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
@@ -1,4 +1,4 @@
1
- require:
1
+ plugins:
2
2
  - rubocop-rspec
3
3
  - rubocop-rails
4
4
 
@@ -12,7 +12,7 @@ AllCops:
12
12
  NewCops: enable
13
13
  SuggestExtensions: false
14
14
  DisplayCopNames: true
15
- TargetRubyVersion: 2.7
15
+ TargetRubyVersion: 3.2
16
16
  TargetRailsVersion: 6.1
17
17
  Exclude:
18
18
  - bin/**/*
data/Appraisals CHANGED
@@ -1,9 +1,13 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- appraise 'rails-6.1' do
4
- gem 'activesupport', '~> 6.1.0'
5
- end
6
-
7
3
  appraise 'rails-7.1' do
8
4
  gem 'activesupport', '~> 7.1.0'
9
5
  end
6
+
7
+ appraise 'rails-7.2' do
8
+ gem 'activesupport', '~> 7.2.0'
9
+ end
10
+
11
+ appraise 'rails-8.0' do
12
+ gem 'activesupport', '~> 8.0.0'
13
+ 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.0.0 (28 June 2025)
6
+
7
+ * Corrected some RuboCop glitches ([#21](https://github.com/hausgold/immoscout/pull/21))
8
+ * Drop Ruby 2 and end of life Rails (<7.1) ([#22](https://github.com/hausgold/immoscout/pull/22))
9
+
10
+ ### 1.9.1 (21 May 2025)
11
+
12
+ * Corrected some RuboCop glitches ([#18](https://github.com/hausgold/immoscout/pull/18))
13
+ * Upgraded the rubocop dependencies ([#19](https://github.com/hausgold/immoscout/pull/19))
14
+ * Corrected some RuboCop glitches ([#20](https://github.com/hausgold/immoscout/pull/20))
15
+
5
16
  ### 1.9.0 (30 January 2025)
6
17
 
7
18
  * Added all versions up to Ruby 3.4 to the CI matrix ([#17](https://github.com/hausgold/immoscout/pull/17))
data/Dockerfile CHANGED
@@ -1,8 +1,8 @@
1
- FROM hausgold/ruby:2.7
2
- MAINTAINER Hermann Mayer <hermann.mayer@hausgold.de>
1
+ FROM hausgold/ruby:3.2
2
+ LABEL org.opencontainers.image.authors="containers@hausgold.de"
3
3
 
4
4
  # Update system gem
5
- RUN gem update --system '3.4.22'
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.4.22' --no-document --no-prerelease
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,18 +9,18 @@ gemspec
9
9
 
10
10
  # Development dependencies
11
11
  gem 'appraisal', '~> 2.4'
12
- gem 'bundler', '~> 2.3'
13
- gem 'countless', '~> 1.1'
12
+ gem 'bundler', '~> 2.6'
13
+ gem 'countless', '~> 2.0'
14
14
  gem 'factory_bot', '~> 6.2'
15
15
  gem 'guard-rspec', '~> 4.7'
16
- gem 'railties', '>= 6.1'
16
+ gem 'railties', '>= 7.1'
17
17
  gem 'rake', '~> 13.0'
18
18
  gem 'redcarpet', '~> 3.5'
19
19
  gem 'rspec', '~> 3.12'
20
20
  gem 'rspec-json_expectations', '~> 2.2'
21
- gem 'rubocop', '~> 1.28'
22
- gem 'rubocop-rails', '~> 2.14'
23
- gem 'rubocop-rspec', '~> 2.10'
21
+ gem 'rubocop'
22
+ gem 'rubocop-rails'
23
+ gem 'rubocop-rspec'
24
24
  gem 'simplecov', '>= 0.22'
25
25
  gem 'terminal-table', '~> 3.0'
26
26
  gem 'timecop', '>= 0.9.6'
@@ -1,68 +1,7 @@
1
- <?xml version="1.0" encoding="UTF-8" standalone="no"?>
2
- <svg
3
- xmlns:dc="http://purl.org/dc/elements/1.1/"
4
- xmlns:cc="http://creativecommons.org/ns#"
5
- xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
6
- xmlns:svg="http://www.w3.org/2000/svg"
7
- xmlns="http://www.w3.org/2000/svg"
8
- version="1.1"
9
- id="Ebene_1"
10
- x="0px"
11
- y="0px"
12
- viewBox="0 0 800 200"
13
- xml:space="preserve"
14
- width="800"
15
- height="200"><metadata
16
- id="metadata33"><rdf:RDF><cc:Work
17
- rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
18
- rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title></dc:title></cc:Work></rdf:RDF></metadata><defs
19
- id="defs31" />
20
- <style
21
- type="text/css"
22
- id="style2">
23
- .st0{fill-rule:evenodd;clip-rule:evenodd;fill:#E73E11;}
24
- .st1{fill-rule:evenodd;clip-rule:evenodd;fill:#0371B9;}
25
- .st2{fill:#132E48;}
26
- .st3{font-family:'OpenSans-Bold';}
27
- .st4{font-size:29.5168px;}
28
- .st5{fill-rule:evenodd;clip-rule:evenodd;fill:none;}
29
- .st6{opacity:0.5;fill:#132E48;}
30
- .st7{font-family:'OpenSans';}
31
- .st8{font-size:12px;}
32
- </style>
33
- <g
34
- transform="translate(0,1.53584)"
35
- id="g828"><g
36
- transform="translate(35.93985,35.66416)"
37
- id="g8">
38
- <path
39
- style="clip-rule:evenodd;fill:#e73e11;fill-rule:evenodd"
40
- id="path4"
41
- d="m -0.1,124.4 c 0,0 33.7,-123.2 66.7,-123.2 12.8,0 26.9,21.9 38.8,47.2 -23.6,27.9 -66.6,59.7 -94,76 -7.1,0 -11.5,0 -11.5,0 z"
42
- class="st0" />
43
- <path
44
- style="clip-rule:evenodd;fill:#0371b9;fill-rule:evenodd"
45
- id="path6"
46
- d="m 88.1,101.8 c 13.5,-10.4 18.4,-16.2 27.1,-25.4 10,25.7 16.7,48 16.7,48 0,0 -41.4,0 -78,0 14.6,-7.9 18.7,-10.7 34.2,-22.6 z"
47
- class="st1" />
48
- </g><text
49
- y="106.40316"
50
- x="192.43155"
51
- style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:29.51733398px;font-family:'Open Sans', sans-serif;-inkscape-font-specification:'OpenSans-Bold, Bold';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;writing-mode:lr-tb;text-anchor:start;fill:#132e48"
52
- id="text10"
53
- class="st2 st3 st4">Immoscout</text>
54
- <rect
55
- style="clip-rule:evenodd;fill:none;fill-rule:evenodd"
56
- id="rect12"
57
- height="24"
58
- width="314.5"
59
- class="st5"
60
- y="118.06416"
61
- x="194.23985" /><text
62
- y="127.22146"
63
- x="194.21715"
64
- style="font-size:12px;font-family:'Open Sans', sans-serif;opacity:0.5;fill:#132e48;-inkscape-font-specification:'Open Sans, sans-serif, Normal';font-weight:normal;font-style:normal;font-stretch:normal;font-variant:normal;text-anchor:start;text-align:start;writing-mode:lr;font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;"
65
- id="text14"
66
- class="st6 st7 st8">Ruby client for the Immobilienscout24 REST API</text>
67
- </g>
68
- </svg>
1
+ <svg id="hg-readme-banner-v2" viewBox="0 0 800 200" width="800" height="200" xmlns="http://www.w3.org/2000/svg"><defs><linearGradient id="a" x1="112.46" y1="309.13" x2="314.5" y2="309.13" gradientUnits="userSpaceOnUse" gradientTransform="translate(-33.985 -122.816)"><stop offset="0" stop-color="#1992f4" /><stop offset="1" stop-color="#2b8af6" /></linearGradient></defs><style>.st3{font-family:&apos;OpenSans-Bold&apos;}.st4{font-size:29.5168px}.st5{fill-rule:evenodd;clip-rule:evenodd;fill:none}.st7{font-family:&apos;OpenSans&apos;}.st8{font-size:12px}@media (prefers-color-scheme:dark){text{fill:#f0f6fc!important}}</style>
2
+ <text y="107.939" x="192.432" style="font-family:'Open Sans', sans-serif;-inkscape-font-specification:'OpenSans-Bold, Bold';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start" class="st3 st4" font-weight="700" font-size="29.517" font-family="'Open Sans',sans-serif" fill="#3f3e4b"
3
+ >Immoscout</text>
4
+ <path class="st5" clip-rule="evenodd" fill="none" fill-rule="evenodd" d="M194.24 119.6h314.5v24h-314.5z"/>
5
+ <text y="128.757" x="194.217" style="font-family:'Open Sans', sans-serif;-inkscape-font-specification:'Open Sans, sans-serif, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start" class="st7 st8" font-weight="400" font-size="12" font-family="'Open Sans',sans-serif" opacity=".75" fill="#3f3e4b"
6
+ >Ruby client for the Immobilienscout24 REST API</text>
7
+ <g transform="translate(33.985 122.816)"><path d="M129.427 32.4q-7-20.71-14.09-41.44c-.33-1-.52-1.18-1.34-.25-3.1 3.48-6.25 6.92-9.49 10.26a180.23 180.23 0 0 1-18.54 16.15 193.7 193.7 0 0 1-21.95 15.43c-2.53 1.47-5.08 2.91-7.62 4.36l.11.27h73.05c1 .1 1.4-.13 1-1.22-.4-1.09-.73-2.38-1.13-3.56z" fill="url(#a)" /><path d="M89.077-63.87c-3.57-5.58-7.42-10.95-12.62-15.17-3.93-3.19-8.28-5-13.42-3.32a23 23 0 0 0-8.76 5.6 66.77 66.77 0 0 0-10.34 13.09c-8 12.68-14.06 26.28-19.28 40.25-4.6 12.33-8.82 24.8-12.95 37.29-2.45 7.41-4.39 15-6.61 22.49-.26.88 0 1 .79 1h7.4c1.23 0 2.44.14 3.6-.68 9.17-6.45 18.51-12.67 27.55-19.31a396.21 396.21 0 0 0 37.36-31.3 245.79 245.79 0 0 0 20.74-22 1.6 1.6 0 0 0 .26-2 224.45 224.45 0 0 0-13.72-25.94z" fill="#f2686d" /></g></svg>
data/docker-compose.yml CHANGED
@@ -1,4 +1,3 @@
1
- version: "3"
2
1
  services:
3
2
  test:
4
3
  build: .
@@ -12,9 +12,9 @@ gem "rake", "~> 13.0"
12
12
  gem "redcarpet", "~> 3.5"
13
13
  gem "rspec", "~> 3.12"
14
14
  gem "rspec-json_expectations", "~> 2.2"
15
- gem "rubocop", "~> 1.28"
16
- gem "rubocop-rails", "~> 2.14"
17
- gem "rubocop-rspec", "~> 2.10"
15
+ gem "rubocop"
16
+ gem "rubocop-rails"
17
+ gem "rubocop-rspec"
18
18
  gem "simplecov", ">= 0.22"
19
19
  gem "terminal-table", "~> 3.0"
20
20
  gem "timecop", ">= 0.9.6"
@@ -3,18 +3,18 @@
3
3
  source "https://rubygems.org"
4
4
 
5
5
  gem "appraisal", "~> 2.4"
6
- gem "bundler", "~> 2.3"
7
- gem "countless", "~> 1.1"
6
+ gem "bundler", "~> 2.6"
7
+ gem "countless", "~> 2.0"
8
8
  gem "factory_bot", "~> 6.2"
9
9
  gem "guard-rspec", "~> 4.7"
10
- gem "railties", ">= 6.1"
10
+ gem "railties", ">= 7.1"
11
11
  gem "rake", "~> 13.0"
12
12
  gem "redcarpet", "~> 3.5"
13
13
  gem "rspec", "~> 3.12"
14
14
  gem "rspec-json_expectations", "~> 2.2"
15
- gem "rubocop", "~> 1.28"
16
- gem "rubocop-rails", "~> 2.14"
17
- gem "rubocop-rspec", "~> 2.10"
15
+ gem "rubocop"
16
+ gem "rubocop-rails"
17
+ gem "rubocop-rspec"
18
18
  gem "simplecov", ">= 0.22"
19
19
  gem "terminal-table", "~> 3.0"
20
20
  gem "timecop", ">= 0.9.6"
@@ -0,0 +1,27 @@
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.0"
8
+ gem "factory_bot", "~> 6.2"
9
+ gem "guard-rspec", "~> 4.7"
10
+ gem "railties", ">= 7.1"
11
+ gem "rake", "~> 13.0"
12
+ gem "redcarpet", "~> 3.5"
13
+ gem "rspec", "~> 3.12"
14
+ gem "rspec-json_expectations", "~> 2.2"
15
+ gem "rubocop"
16
+ gem "rubocop-rails"
17
+ gem "rubocop-rspec"
18
+ gem "simplecov", ">= 0.22"
19
+ gem "terminal-table", "~> 3.0"
20
+ gem "timecop", ">= 0.9.6"
21
+ gem "vcr", "~> 6.0"
22
+ gem "webmock", "~> 3.18"
23
+ gem "yard", ">= 0.9.28"
24
+ gem "yard-activesupport-concern", ">= 0.0.1"
25
+ gem "activesupport", "~> 7.2.0"
26
+
27
+ gemspec path: "../"
@@ -0,0 +1,27 @@
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.0"
8
+ gem "factory_bot", "~> 6.2"
9
+ gem "guard-rspec", "~> 4.7"
10
+ gem "railties", ">= 7.1"
11
+ gem "rake", "~> 13.0"
12
+ gem "redcarpet", "~> 3.5"
13
+ gem "rspec", "~> 3.12"
14
+ gem "rspec-json_expectations", "~> 2.2"
15
+ gem "rubocop"
16
+ gem "rubocop-rails"
17
+ gem "rubocop-rspec"
18
+ gem "simplecov", ">= 0.22"
19
+ gem "terminal-table", "~> 3.0"
20
+ gem "timecop", ">= 0.9.6"
21
+ gem "vcr", "~> 6.0"
22
+ gem "webmock", "~> 3.18"
23
+ gem "yard", ">= 0.9.28"
24
+ gem "yard-activesupport-concern", ">= 0.0.1"
25
+ gem "activesupport", "~> 8.0.0"
26
+
27
+ gemspec path: "../"
data/immoscout.gemspec CHANGED
@@ -30,9 +30,9 @@ Gem::Specification.new do |spec|
30
30
  spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
31
31
  spec.require_paths = ['lib']
32
32
 
33
- spec.required_ruby_version = '>= 2.7'
33
+ spec.required_ruby_version = '>= 3.2'
34
34
 
35
- spec.add_dependency 'activesupport', '>= 6.1'
35
+ spec.add_dependency 'activesupport', '>= 7.1'
36
36
  spec.add_dependency 'faraday', '~> 1.10'
37
37
  spec.add_dependency 'faraday_middleware', '~> 1.2'
38
38
  spec.add_dependency 'simple_oauth', '>= 0.3'
@@ -20,7 +20,7 @@ module Immoscout
20
20
  request(:delete, path, payload, multipart)
21
21
  end
22
22
 
23
- # rubocop:disable Metrics/MethodLength because of the header handling
23
+ # rubocop:disable Metrics/MethodLength -- because of the header handling
24
24
  def request(method, path, payload = nil, multipart = nil)
25
25
  connection.send(method, path, multipart) do |request|
26
26
  if multipart
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # rubocop:disable Metrics/BlockLength because this is how an ActiveSupport
3
+ # rubocop:disable Metrics/BlockLength -- because this is how an ActiveSupport
4
4
  # concern looks like
5
5
  module Immoscout
6
6
  module Models
@@ -19,9 +19,9 @@ module Immoscout
19
19
  .fetch('attachment')
20
20
  end
21
21
 
22
- # rubocop:disable Metrics/AbcSize because this is the
23
- # bare minimum logic
24
- # rubocop:disable Metrics/MethodLength dito
22
+ # rubocop:disable Metrics/AbcSize -- because this is the bare minimum
23
+ # logic
24
+ # rubocop:disable Metrics/MethodLength -- ditto
25
25
  def save
26
26
  attachable_id = attachable.try(:id) || attachable
27
27
  response = api.post(
@@ -12,8 +12,7 @@ module Immoscout
12
12
 
13
13
  self.unpack_collection = proc do |hash|
14
14
  hash
15
- .fetch('common.realtorContactDetailsList', {})
16
- .fetch('realtorContactDetails', nil)
15
+ .dig('common.realtorContactDetailsList', 'realtorContactDetails')
17
16
  end
18
17
 
19
18
  def save
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # rubocop:disable Metrics/BlockLength because this is how an ActiveSupport
3
+ # rubocop:disable Metrics/BlockLength -- because this is how an ActiveSupport
4
4
  # concern looks like
5
5
  module Immoscout
6
6
  module Models
@@ -13,10 +13,9 @@ module Immoscout
13
13
  include Immoscout::Models::Concerns::Modelable
14
14
 
15
15
  self.unpack_collection = proc do |hash|
16
- hash
17
- .fetch('realestates.realEstates', {})
18
- .fetch('realEstateList', {})
19
- .fetch('realEstateElement', nil)
16
+ hash.dig('realestates.realEstates',
17
+ 'realEstateList',
18
+ 'realEstateElement')
20
19
  end
21
20
 
22
21
  def save
@@ -14,17 +14,11 @@ module Immoscout
14
14
  Immoscout::Api::Client.instance
15
15
  end
16
16
 
17
- def api
18
- self.class.api
19
- end
17
+ delegate :api, to: :class
20
18
 
21
- def handle_response(response)
22
- self.class.handle_response(response)
23
- end
19
+ delegate :handle_response, to: :class
24
20
 
25
- def id_from_response(response)
26
- self.class.id_from_response(response)
27
- end
21
+ delegate :id_from_response, to: :class
28
22
  end
29
23
 
30
24
  class_methods do
@@ -48,8 +42,7 @@ module Immoscout
48
42
  .body
49
43
  .fetch('common.messages')
50
44
  .first
51
- .fetch('message', {})
52
- .fetch('id', nil)
45
+ .dig('message', 'id')
53
46
  end
54
47
  end
55
48
  end
@@ -15,7 +15,7 @@ module Immoscout
15
15
 
16
16
  # :reek:ControlParameter - standard stuff, reek!
17
17
  # :reek:TooManyStatements
18
- def method_missing(method_name, *arguments, &block)
18
+ def method_missing(method_name, *arguments, &)
19
19
  if method_name =~ /build_(\w+)/
20
20
  match = Regexp.last_match(1).intern
21
21
  properties = self.class.properties
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # rubocop:disable Metrics/BlockLength because this is how an ActiveSupport
3
+ # rubocop:disable Metrics/BlockLength -- because this is how an ActiveSupport
4
4
  # concern looks like
5
5
  module Immoscout
6
6
  module Models
@@ -25,11 +25,11 @@ module Immoscout
25
25
  self.class.try(:json_wrapper)
26
26
  end
27
27
 
28
- # rubocop:disable Metrics/PerceivedComplexity because this is the
28
+ # rubocop:disable Metrics/PerceivedComplexity -- because this is the
29
29
  # bare minimum logic
30
- # rubocop:disable Metrics/MethodLength dito
31
- # rubocop:disable Metrics/CyclomaticComplexity dito
32
- # rubocop:disable Metrics/AbcSize dito
30
+ # rubocop:disable Metrics/MethodLength -- ditto
31
+ # rubocop:disable Metrics/CyclomaticComplexity -- ditto
32
+ # rubocop:disable Metrics/AbcSize -- ditto
33
33
  def to_h
34
34
  self.class.properties.each_with_object({}) do |(key, value), memo|
35
35
  # skip if it's readonly and should not be exposed in #as_json
@@ -3,7 +3,7 @@
3
3
  # The gem version details.
4
4
  module Immoscout
5
5
  # The version of the +immoscout+ gem
6
- VERSION = '1.9.0'
6
+ VERSION = '2.0.0'
7
7
 
8
8
  class << self
9
9
  # Returns the version of gem as a string.
metadata CHANGED
@@ -1,14 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: immoscout
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.9.0
4
+ version: 2.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Marcus Geissler
8
- autorequire:
9
8
  bindir: exe
10
9
  cert_chain: []
11
- date: 2025-01-30 00:00:00.000000000 Z
10
+ date: 1980-01-02 00:00:00.000000000 Z
12
11
  dependencies:
13
12
  - !ruby/object:Gem::Dependency
14
13
  name: activesupport
@@ -16,14 +15,14 @@ dependencies:
16
15
  requirements:
17
16
  - - ">="
18
17
  - !ruby/object:Gem::Version
19
- version: '6.1'
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: '6.1'
25
+ version: '7.1'
27
26
  - !ruby/object:Gem::Dependency
28
27
  name: faraday
29
28
  requirement: !ruby/object:Gem::Requirement
@@ -80,7 +79,6 @@ dependencies:
80
79
  - - "~>"
81
80
  - !ruby/object:Gem::Version
82
81
  version: '2.6'
83
- description:
84
82
  email:
85
83
  - marcus3006@gmail.com
86
84
  executables: []
@@ -116,6 +114,8 @@ files:
116
114
  - docker-compose.yml
117
115
  - gemfiles/rails_6.1.gemfile
118
116
  - gemfiles/rails_7.1.gemfile
117
+ - gemfiles/rails_7.2.gemfile
118
+ - gemfiles/rails_8.0.gemfile
119
119
  - immoscout.gemspec
120
120
  - lib/immoscout.rb
121
121
  - lib/immoscout/api/client.rb
@@ -154,7 +154,6 @@ files:
154
154
  - lib/immoscout/models/picture.rb
155
155
  - lib/immoscout/models/publish.rb
156
156
  - lib/immoscout/version.rb
157
- homepage:
158
157
  licenses:
159
158
  - MIT
160
159
  metadata:
@@ -163,7 +162,6 @@ metadata:
163
162
  changelog_uri: https://github.com/hausgold/immoscout/blob/master/CHANGELOG.md
164
163
  bug_tracker_uri: https://github.com/hausgold/immoscout/issues
165
164
  documentation_uri: https://www.rubydoc.info/gems/immoscout
166
- post_install_message:
167
165
  rdoc_options: []
168
166
  require_paths:
169
167
  - lib
@@ -171,15 +169,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
171
169
  requirements:
172
170
  - - ">="
173
171
  - !ruby/object:Gem::Version
174
- version: '2.7'
172
+ version: '3.2'
175
173
  required_rubygems_version: !ruby/object:Gem::Requirement
176
174
  requirements:
177
175
  - - ">="
178
176
  - !ruby/object:Gem::Version
179
177
  version: '0'
180
178
  requirements: []
181
- rubygems_version: 3.4.22
182
- signing_key:
179
+ rubygems_version: 3.6.9
183
180
  specification_version: 4
184
181
  summary: Ruby client for the Immobilienscout24 REST API
185
182
  test_files: []