spreaker 0.1.4 → 0.1.5

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: 4123aa73cb7d7e4e381208caa8f65e836edc3544a61b61aee1ca076a05e29d01
4
- data.tar.gz: 7911f4fe6f2de0e51ec4c1f202639a44f11032e3fb35d91869c948df27030ef6
3
+ metadata.gz: 1a6de152ba0f79f0a4c5d0572a4632b62b3b64349ecc9ec1f646bfe9b0a63b6b
4
+ data.tar.gz: c82f955075e8c7f805a57cd784c3069c3d1562d9b8e73547b81a310d9b275f7e
5
5
  SHA512:
6
- metadata.gz: 8373430e56d162142846309b9bb69aab61ad445b2d56a8a14e40b960d946db0d89bb4e90cc0065f9e396768d41712b5ad434399ebb3f090c503fd6808b874499
7
- data.tar.gz: c95ad7b21b8195ea2ffab879a6cf51944f3d147c2b775190c297c6a7c118593564be5073718692997077bdaa2020131632452413404f3fb0dcc918cadadd09e4
6
+ metadata.gz: b195452445c0cfd547eba6b0b2492a796898056492f072a313019527058b610ffcc05614b6e8569da95bcc253b620a6e818e1ebf7a8abf80a40201cf0f54f121
7
+ data.tar.gz: 636bcc7b1b2644b11a5df724e455b3e54266d6a0ac94ebc4b77f9f3b8f64b0916bef888c6f743ab0dbdcbb3fab7152dca727618b33f816f0f65e9e49183fa742
@@ -4,7 +4,15 @@ module Spreaker
4
4
 
5
5
  def initialize(access_token: ENV["SPREAKER_ACCESS_TOKEN"])
6
6
  @access_token = access_token
7
+ retry_options = {
8
+ max: 2,
9
+ interval: 0.05,
10
+ interval_randomness: 0.5,
11
+ backoff_factor: 2,
12
+ retry_statuses: [429]
13
+ }
7
14
  @connection = Faraday.new(url: "https://api.spreaker.com") do |conn|
15
+ conn.request :retry, retry_options
8
16
  conn.request :authorization, "Bearer", @access_token
9
17
  end
10
18
  end
@@ -56,16 +64,11 @@ module Spreaker
56
64
  end
57
65
 
58
66
  def update_episode(id:, properties:)
59
- begin
60
- response = connection.post("/v2/episodes/#{id}") do |req|
61
- req.body = URI.encode_www_form(properties)
62
- end
63
- properties = JSON.parse(response.body)['response']['episode']
64
- Spreaker::Episode.new(properties: properties)
65
- rescue JSON::ParserError => e
66
- ap response.body
67
- raise e
67
+ response = connection.post("/v2/episodes/#{id}") do |req|
68
+ req.body = URI.encode_www_form(properties)
68
69
  end
70
+ properties = JSON.parse(response.body)['response']['episode']
71
+ Spreaker::Episode.new(properties: properties)
69
72
  end
70
73
  end
71
74
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Spreaker
4
- VERSION = "0.1.4"
4
+ VERSION = "0.1.5"
5
5
  end
data/lib/spreaker.rb CHANGED
@@ -1,6 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  require "faraday"
4
+ require "faraday/retry"
4
5
  require_relative "spreaker/version"
5
6
  require_relative "spreaker/user"
6
7
  require_relative "spreaker/show"
data/spreaker.gemspec CHANGED
@@ -34,6 +34,7 @@ Gem::Specification.new do |spec|
34
34
 
35
35
  # Uncomment to register a new dependency of your gem
36
36
  spec.add_dependency "faraday", "~> 2.7.11"
37
+ spec.add_dependency "faraday-retry", "~> 2.2.0"
37
38
 
38
39
  # For more information and examples about making a new gem, check out our
39
40
  # guide at: https://bundler.io/guides/creating_gem.html
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: spreaker
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.4
4
+ version: 0.1.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Charles Max Wood
@@ -24,6 +24,20 @@ dependencies:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
26
  version: 2.7.11
27
+ - !ruby/object:Gem::Dependency
28
+ name: faraday-retry
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "~>"
32
+ - !ruby/object:Gem::Version
33
+ version: 2.2.0
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - "~>"
39
+ - !ruby/object:Gem::Version
40
+ version: 2.2.0
27
41
  description: Manage your podcasts at episodes on Spreaker with this gem.
28
42
  email:
29
43
  - chuck@topenddevs.com