mailerlite 1.8.0 → 1.13.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: 5d8ec3996831a0bb8c319fb16ef3b2b75d6240f867295c526cd80d58ac62362d
4
- data.tar.gz: 6508011451874fa5915283979cad2aa5f048a5b4f98e06c7d797e0d337e4087a
3
+ metadata.gz: 359210ce363c788f0ad34e533a7d50a9a919f19da5bad287e6515257cad743b2
4
+ data.tar.gz: 1ce825edb310b2c63fa9c7d764c15ddfdf6996d344fafdc618af2c036ca1510d
5
5
  SHA512:
6
- metadata.gz: f3096b6e2073d225eba40df4dfd77baed6b6fe0f969a0e5854e27ca284dfa8c52da8cbaa224b9029d15142e869399446ff8041a9d71f5615ab8fac9783cff9ed
7
- data.tar.gz: d290bcc41abc81d5278a8111323f4425ccb31b66df3f010c5cf333973b493f68b3af0f259f4de96ad041694c241c010cf5f9224b6ca06c6bde424358e693623b
6
+ metadata.gz: d8e88a6dcd36f6bd11c64fd3fadf3ca20a19408097a9ecb860d94645d0cc804cfd434768bf31ec000333407118b2a59da5032d01cabbaa7ccaa6703121898c90
7
+ data.tar.gz: f33f19f0b3bab8bba2dd540ba29000e6c34119e20aca63ea088b17f7cfc9bc3624117440435eba5d56c0c82d057b64ee2502b3831eb640f3af3d6020c279e2c8
@@ -0,0 +1,11 @@
1
+ version: 2
2
+ updates:
3
+ - package-ecosystem: "bundler"
4
+ directory: "/"
5
+ schedule:
6
+ interval: "daily"
7
+
8
+ - package-ecosystem: "github-actions"
9
+ directory: "/"
10
+ schedule:
11
+ interval: "daily"
@@ -0,0 +1,46 @@
1
+ name: Test
2
+
3
+ on: [push]
4
+
5
+ jobs:
6
+ test:
7
+ name: Test
8
+ strategy:
9
+ matrix:
10
+ ruby: [2.5, 2.6, 2.7, '3.0', head, truffleruby]
11
+
12
+ runs-on: ubuntu-latest
13
+
14
+ steps:
15
+ - uses: actions/checkout@v2
16
+ - name: Set up Ruby ${{ matrix.ruby }}
17
+ uses: ruby/setup-ruby@v1
18
+ with:
19
+ ruby-version: ${{ matrix.ruby }}
20
+ bundler-cache: true
21
+
22
+ - name: RSpec
23
+ env:
24
+ CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
25
+ run: |
26
+ bundle exec rspec
27
+
28
+ rubocop:
29
+ name: RuboCop
30
+ runs-on: ubuntu-latest
31
+
32
+ steps:
33
+ - uses: actions/checkout@v2.3.4
34
+ - name: Set up Ruby
35
+ uses: ruby/setup-ruby@v1
36
+ with:
37
+ ruby-version: '3.0'
38
+ bundler-cache: true
39
+
40
+ - name: Install dependencies
41
+ run: |
42
+ gem install bundler
43
+ bundle install --jobs 4 --retry 3
44
+ - name: RuboCop
45
+ run: |
46
+ bundle exec rubocop
@@ -1,7 +1,8 @@
1
1
  AllCops:
2
- TargetRubyVersion: 2.2
2
+ TargetRubyVersion: 2.5
3
+ NewCops: enable
3
4
 
4
- Layout/AlignParameters:
5
+ Layout/ParameterAlignment:
5
6
  Enabled: true
6
7
  EnforcedStyle: with_fixed_indentation
7
8
 
@@ -31,6 +32,13 @@ Style/DoubleNegation:
31
32
  Exclude:
32
33
  - 'lib/mailerlite/utils.rb'
33
34
 
35
+ Style/OptionalBooleanParameter:
36
+ Enabled: false
37
+
34
38
  Metrics/BlockLength:
35
39
  Exclude:
40
+ - '*.gemspec'
36
41
  - 'spec/**/*_spec.rb'
42
+
43
+ Lint/MissingSuper:
44
+ Enabled: false
@@ -0,0 +1,76 @@
1
+ # Contributor Covenant Code of Conduct
2
+
3
+ ## Our Pledge
4
+
5
+ In the interest of fostering an open and welcoming environment, we as
6
+ contributors and maintainers pledge to making participation in our project and
7
+ our community a harassment-free experience for everyone, regardless of age, body
8
+ size, disability, ethnicity, sex characteristics, gender identity and expression,
9
+ level of experience, education, socio-economic status, nationality, personal
10
+ appearance, race, religion, or sexual identity and orientation.
11
+
12
+ ## Our Standards
13
+
14
+ Examples of behavior that contributes to creating a positive environment
15
+ include:
16
+
17
+ * Using welcoming and inclusive language
18
+ * Being respectful of differing viewpoints and experiences
19
+ * Gracefully accepting constructive criticism
20
+ * Focusing on what is best for the community
21
+ * Showing empathy towards other community members
22
+
23
+ Examples of unacceptable behavior by participants include:
24
+
25
+ * The use of sexualized language or imagery and unwelcome sexual attention or
26
+ advances
27
+ * Trolling, insulting/derogatory comments, and personal or political attacks
28
+ * Public or private harassment
29
+ * Publishing others' private information, such as a physical or electronic
30
+ address, without explicit permission
31
+ * Other conduct which could reasonably be considered inappropriate in a
32
+ professional setting
33
+
34
+ ## Our Responsibilities
35
+
36
+ Project maintainers are responsible for clarifying the standards of acceptable
37
+ behavior and are expected to take appropriate and fair corrective action in
38
+ response to any instances of unacceptable behavior.
39
+
40
+ Project maintainers have the right and responsibility to remove, edit, or
41
+ reject comments, commits, code, wiki edits, issues, and other contributions
42
+ that are not aligned to this Code of Conduct, or to ban temporarily or
43
+ permanently any contributor for other behaviors that they deem inappropriate,
44
+ threatening, offensive, or harmful.
45
+
46
+ ## Scope
47
+
48
+ This Code of Conduct applies both within project spaces and in public spaces
49
+ when an individual is representing the project or its community. Examples of
50
+ representing a project or community include using an official project e-mail
51
+ address, posting via an official social media account, or acting as an appointed
52
+ representative at an online or offline event. Representation of a project may be
53
+ further defined and clarified by project maintainers.
54
+
55
+ ## Enforcement
56
+
57
+ Instances of abusive, harassing, or otherwise unacceptable behavior may be
58
+ reported by contacting the project team at jpalumickas@gmail.com. All
59
+ complaints will be reviewed and investigated and will result in a response that
60
+ is deemed necessary and appropriate to the circumstances. The project team is
61
+ obligated to maintain confidentiality with regard to the reporter of an incident.
62
+ Further details of specific enforcement policies may be posted separately.
63
+
64
+ Project maintainers who do not follow or enforce the Code of Conduct in good
65
+ faith may face temporary or permanent repercussions as determined by other
66
+ members of the project's leadership.
67
+
68
+ ## Attribution
69
+
70
+ This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4,
71
+ available at https://www.contributor-covenant.org/version/1/4/code-of-conduct.html
72
+
73
+ [homepage]: https://www.contributor-covenant.org
74
+
75
+ For answers to common questions about this code of conduct, see
76
+ https://www.contributor-covenant.org/faq
data/Gemfile CHANGED
@@ -1,18 +1,5 @@
1
- source 'https://rubygems.org'
2
-
3
- group :development do
4
- gem 'rubocop', '~> 0.63'
5
- end
1
+ # frozen_string_literal: true
6
2
 
7
- group :development, :test do
8
- gem 'pry'
9
- end
10
-
11
- group :test do
12
- gem 'rake' # For Travis CI
13
- gem 'rspec', '~> 3.8'
14
- gem 'simplecov', '~> 0.16', require: false
15
- gem 'webmock', '~> 3.5'
16
- end
3
+ source 'https://rubygems.org'
17
4
 
18
5
  gemspec
data/LICENSE CHANGED
@@ -1,6 +1,6 @@
1
1
  MIT License
2
2
 
3
- Copyright (c) 2019 Justas Palumickas
3
+ Copyright (c) 2020 Justas Palumickas
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
data/README.md CHANGED
@@ -3,9 +3,7 @@
3
3
  A Ruby gem which helps to communicate with [MailerLite][mailerlite] API.
4
4
 
5
5
  [![Gem Version](https://img.shields.io/gem/v/mailerlite.svg?style=flat-square)][rubygems]
6
- [![Build Status](https://img.shields.io/travis/jpalumickas/mailerlite-ruby.svg?style=flat-square)][travis]
7
- [![Code Climate](https://img.shields.io/codeclimate/maintainability/jpalumickas/mailerlite-ruby.svg?style=flat-square)][codeclimate]
8
- [![Test Coverage](https://img.shields.io/codeclimate/c/jpalumickas/mailerlite-ruby.svg?style=flat-square)][codeclimate_coverage]
6
+ [![Coverage Status](https://img.shields.io/codecov/c/github/jpalumickas/mailerlite-ruby?style=flat-square)][codecov]
9
7
 
10
8
  ## Installation
11
9
 
@@ -34,7 +32,7 @@ client = MailerLite::Client.new(api_key: 'my-secret-api-key')
34
32
  Example:
35
33
 
36
34
  ```ruby
37
- client.campaigns
35
+ client.groups
38
36
  ```
39
37
 
40
38
  Or create file under `config/initializers/mailerlite.rb`
@@ -42,6 +40,7 @@ Or create file under `config/initializers/mailerlite.rb`
42
40
  ```ruby
43
41
  MailerLite.configure do |config|
44
42
  config.api_key = 'my-secret-api-key'
43
+ # config.timeout = 10
45
44
  end
46
45
  ```
47
46
 
@@ -58,22 +57,22 @@ See more documentation in [examples][examples] directory.
58
57
 
59
58
  ## Supported Ruby Versions
60
59
 
61
- This library aims to support and is [tested against][travis] the following Ruby
60
+ This library aims to support and is [tested against][github_actions] the following Ruby
62
61
  implementations:
63
62
 
64
- * Ruby 2.2.0
65
- * Ruby 2.3.0
66
- * Ruby 2.4.0
67
63
  * Ruby 2.5.0
68
64
  * Ruby 2.6.0
65
+ * Ruby 2.7.0
66
+ * Ruby 3.0.0
67
+ * Truffleruby
69
68
 
70
- ## Copyright
71
- Copyright (c) 2019 Justas Palumickas. See [LICENSE][license] for details.
69
+ ## License
70
+
71
+ The gem is available as open source under the terms of the [MIT License][license].
72
72
 
73
73
  [rubygems]: https://rubygems.org/gems/mailerlite
74
- [travis]: https://travis-ci.org/jpalumickas/mailerlite-ruby
75
- [codeclimate]: https://codeclimate.com/github/jpalumickas/mailerlite-ruby
76
- [codeclimate_coverage]: https://codeclimate.com/github/jpalumickas/mailerlite-ruby/test_coverage
74
+ [codecov]: https://codecov.io/gh/jpalumickas/mailerlite-ruby
75
+ [github_actions]: https://github.com/jpalumickas/mailerlite-ruby/actions
77
76
 
78
77
  [license]: https://raw.githubusercontent.com/jpalumickas/mailerlite-ruby/master/LICENSE
79
78
  [create_a_campaign]: https://raw.githubusercontent.com/jpalumickas/mailerlite-ruby/master/examples/create_campaign.md
@@ -13,7 +13,7 @@ client = MailerLite::Client.new(api_key: 'my-secret-api-key')
13
13
  Example:
14
14
 
15
15
  ```ruby
16
- client.campaigns
16
+ client.groups
17
17
  ```
18
18
 
19
19
  ## Using global class config
@@ -32,7 +32,7 @@ on `MailerLite` class directly.
32
32
  Example:
33
33
 
34
34
  ```ruby
35
- MailerLite.campaigns
35
+ MailerLite.groups
36
36
  ```
37
37
 
38
38
  [mailerlite]: https://www.mailerlite.com
@@ -33,8 +33,8 @@ html = "<div>Welcome,<br /><a href=\"{$unsubscribe}\">Unsubscribe</a></div>"
33
33
  plain_text = 'Welcome, {$unsubscribe} {$url}'
34
34
  client.update_campaign_content(campaign.id, html: html, plain: plain_text )
35
35
  ```
36
- `${url}` must be exist in plain text.
37
- `${unsubscribe}` must be exist in both plain text and html. See the [API documentation](http://developers.mailerlite.com/reference#put-custom-content-to-campaign).
36
+ `{$url}` must be exist in plain text.
37
+ `{$unsubscribe}` must be exist in both plain text and html. See the [API documentation](http://developers.mailerlite.com/reference#put-custom-content-to-campaign).
38
38
 
39
39
  ##6. Send the campaign
40
40
  ```ruby
@@ -33,7 +33,7 @@ client.create_subscriber(email: 'john@example.com', name: 'John Smith')
33
33
  ## Update single subscriber
34
34
 
35
35
  ```ruby
36
- client.update_subscriber(subscriber_id options)
36
+ client.update_subscriber(subscriber_id, options)
37
37
  ```
38
38
 
39
39
  or with email
@@ -26,8 +26,11 @@ module MailerLite
26
26
  #
27
27
  # @param options [Hash] A customizable set of options.
28
28
  # @option options [String] :api_key API Key provider from MailerLite.
29
+ # @option options [String] :timeout optional open/read timeout Integer in
30
+ # seconds
29
31
  def initialize(options = {})
30
32
  config.api_key = options[:api_key] if options[:api_key]
33
+ config.timeout = options[:timeout] if options[:timeout]
31
34
  end
32
35
 
33
36
  # @return [Configuration]
@@ -11,7 +11,7 @@ module MailerLite
11
11
  # @return [Hash] Response from API.
12
12
  def account
13
13
  result = connection.get('me')
14
- result && result.account
14
+ result&.account
15
15
  end
16
16
 
17
17
  # Get account information.
@@ -4,12 +4,12 @@ module MailerLite
4
4
  # A class responsible for all configurations.
5
5
  class Configuration
6
6
  # Default API endpoint.
7
- API_ENDPOINT = 'https://api.mailerlite.com/api/v2'.freeze
7
+ API_ENDPOINT = 'https://api.mailerlite.com/api/v2'
8
8
 
9
9
  # Default User Agent header string.
10
- USER_AGENT = "MailerLite Ruby v#{MailerLite::VERSION}".freeze
10
+ USER_AGENT = "MailerLite Ruby v#{MailerLite::VERSION}"
11
11
 
12
- attr_accessor :api_key
12
+ attr_accessor :api_key, :timeout
13
13
  attr_writer :url, :user_agent
14
14
 
15
15
  # Takes url provided from configuration or uses default one.
@@ -37,30 +37,35 @@ module MailerLite
37
37
  private
38
38
 
39
39
  def request(method, path, query_params = {}, body_params = {})
40
- response = connection.send(method) do |request|
41
- request.url(path, query_params)
42
- request.headers['Content-Type'] = 'application/json'
43
-
44
- if client.config.api_key
45
- request.headers['X-MailerLite-ApiKey'] = client.config.api_key
46
- end
47
-
48
- request.body = body_params.to_json
40
+ connection.send(method, path) do |request|
41
+ request.params = query_params unless query_params.empty?
42
+ request.body = body_params.to_json unless body_params.empty?
49
43
  end
50
-
51
- response
52
44
  end
53
45
 
54
46
  def connection
55
47
  conn_opts = {
56
- headers: { user_agent: client.config.user_agent },
57
48
  url: client.config.url,
58
- builder: middleware
49
+ builder: middleware,
50
+ headers: headers
59
51
  }
52
+ timeout = client.config.timeout
53
+ conn_opts[:request] = { timeout: timeout } unless timeout.nil?
60
54
 
61
55
  Faraday.new(conn_opts)
62
56
  end
63
57
 
58
+ def headers
59
+ headers = {
60
+ 'User-Agent' => client.config.user_agent,
61
+ 'Content-Type' => 'application/json'
62
+ }
63
+
64
+ headers['X-MailerLite-ApiKey'] = client.config.api_key if client.config.api_key
65
+
66
+ headers
67
+ end
68
+
64
69
  def middleware
65
70
  @middleware ||= Faraday::RackBuilder.new do |builder|
66
71
  builder.request :json
@@ -18,7 +18,7 @@ module MailerLite
18
18
  message = error_message(response)
19
19
 
20
20
  klass = error_class(status)
21
- klass.new(message) if klass
21
+ klass&.new(message)
22
22
  end
23
23
 
24
24
  def self.error_class(status)
@@ -4,10 +4,10 @@ module MailerLite
4
4
  module Middleware
5
5
  # This middleware will convert empty response to {}
6
6
  class FixUnparsedJson < Faraday::Response::Middleware
7
- private
7
+ def parse(body)
8
+ return '{}' if body == ''
8
9
 
9
- def on_complete(response)
10
- response[:body] = {} if response[:body] == ''
10
+ body
11
11
  end
12
12
  end
13
13
  end
@@ -6,8 +6,6 @@ module MailerLite
6
6
  # This class raises an exception based HTTP status codes returned
7
7
  # by the API.
8
8
  class RaiseError < Faraday::Response::Middleware
9
- private
10
-
11
9
  def on_complete(response)
12
10
  error = MailerLite::Error.from_response(response)
13
11
  raise error if error
@@ -4,12 +4,12 @@ module MailerLite
4
4
  module Middleware
5
5
  # This class will underscore all response keys from CamelCase.
6
6
  class UnderscoreKeys < Faraday::Response::Middleware
7
- private
8
-
9
7
  def on_complete(response)
10
8
  response[:body] = updated_response(response[:body])
11
9
  end
12
10
 
11
+ private
12
+
13
13
  def updated_response(response)
14
14
  if response.is_a?(Hash)
15
15
  underscore_hash_keys(response)
@@ -2,5 +2,5 @@
2
2
 
3
3
  module MailerLite
4
4
  # @return [String] Version number.
5
- VERSION = '1.8.0'.freeze
5
+ VERSION = '1.13.0'
6
6
  end
@@ -14,6 +14,13 @@ Gem::Specification.new do |spec|
14
14
  spec.description = 'Ruby gem for MailerLite API v2'
15
15
  spec.homepage = 'https://github.com/jpalumickas/mailerlite-ruby'
16
16
 
17
+ spec.metadata = {
18
+ 'bug_tracker_uri' => 'https://github.com/jpalumickas/mailerlite-ruby/issues',
19
+ 'changelog_uri' => 'https://github.com/jpalumickas/mailerlite-ruby/releases',
20
+ 'documentation_uri' => 'https://github.com/jpalumickas/mailerlite-ruby/tree/master/examples',
21
+ 'source_code_uri' => 'https://github.com/jpalumickas/mailerlite-ruby'
22
+ }
23
+
17
24
  spec.license = 'MIT'
18
25
 
19
26
  spec.files = `git ls-files -z`
@@ -23,11 +30,17 @@ Gem::Specification.new do |spec|
23
30
  spec.bindir = 'exe'
24
31
  spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
25
32
  spec.require_paths = ['lib']
26
- spec.required_ruby_version = '>= 2.2.0'
27
-
28
- spec.add_dependency 'faraday', '~> 0.10'
29
- spec.add_dependency 'faraday_middleware', '~> 0.10'
30
- spec.add_dependency 'hashie', '>= 3.5.5'
31
-
32
- spec.add_development_dependency 'rake', '~> 10.0'
33
+ spec.required_ruby_version = '>= 2.5.0'
34
+
35
+ spec.add_dependency 'faraday', '~> 1.0', '>= 1.0.1'
36
+ spec.add_dependency 'faraday_middleware', '~> 1.0'
37
+ spec.add_dependency 'hashie', '~> 4.0'
38
+
39
+ # spec.add_development_dependency 'codecov', '~> 0.2', '>= 0.2.12'
40
+ spec.add_development_dependency 'pry', '~> 0.13'
41
+ spec.add_development_dependency 'rake', '~> 13.0'
42
+ spec.add_development_dependency 'rspec', '~> 3.10'
43
+ spec.add_development_dependency 'rubocop', '~> 1.8'
44
+ spec.add_development_dependency 'simplecov', '~> 0.20'
45
+ spec.add_development_dependency 'webmock', '~> 3.11'
33
46
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mailerlite
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.8.0
4
+ version: 1.13.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Justas Palumickas
8
- autorequire:
8
+ autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2019-02-05 00:00:00.000000000 Z
11
+ date: 2021-01-16 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: faraday
@@ -16,56 +16,132 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '0.10'
19
+ version: '1.0'
20
+ - - ">="
21
+ - !ruby/object:Gem::Version
22
+ version: 1.0.1
20
23
  type: :runtime
21
24
  prerelease: false
22
25
  version_requirements: !ruby/object:Gem::Requirement
23
26
  requirements:
24
27
  - - "~>"
25
28
  - !ruby/object:Gem::Version
26
- version: '0.10'
29
+ version: '1.0'
30
+ - - ">="
31
+ - !ruby/object:Gem::Version
32
+ version: 1.0.1
27
33
  - !ruby/object:Gem::Dependency
28
34
  name: faraday_middleware
29
35
  requirement: !ruby/object:Gem::Requirement
30
36
  requirements:
31
37
  - - "~>"
32
38
  - !ruby/object:Gem::Version
33
- version: '0.10'
39
+ version: '1.0'
34
40
  type: :runtime
35
41
  prerelease: false
36
42
  version_requirements: !ruby/object:Gem::Requirement
37
43
  requirements:
38
44
  - - "~>"
39
45
  - !ruby/object:Gem::Version
40
- version: '0.10'
46
+ version: '1.0'
41
47
  - !ruby/object:Gem::Dependency
42
48
  name: hashie
43
49
  requirement: !ruby/object:Gem::Requirement
44
50
  requirements:
45
- - - ">="
51
+ - - "~>"
46
52
  - !ruby/object:Gem::Version
47
- version: 3.5.5
53
+ version: '4.0'
48
54
  type: :runtime
49
55
  prerelease: false
50
56
  version_requirements: !ruby/object:Gem::Requirement
51
57
  requirements:
52
- - - ">="
58
+ - - "~>"
59
+ - !ruby/object:Gem::Version
60
+ version: '4.0'
61
+ - !ruby/object:Gem::Dependency
62
+ name: pry
63
+ requirement: !ruby/object:Gem::Requirement
64
+ requirements:
65
+ - - "~>"
66
+ - !ruby/object:Gem::Version
67
+ version: '0.13'
68
+ type: :development
69
+ prerelease: false
70
+ version_requirements: !ruby/object:Gem::Requirement
71
+ requirements:
72
+ - - "~>"
53
73
  - !ruby/object:Gem::Version
54
- version: 3.5.5
74
+ version: '0.13'
55
75
  - !ruby/object:Gem::Dependency
56
76
  name: rake
57
77
  requirement: !ruby/object:Gem::Requirement
58
78
  requirements:
59
79
  - - "~>"
60
80
  - !ruby/object:Gem::Version
61
- version: '10.0'
81
+ version: '13.0'
82
+ type: :development
83
+ prerelease: false
84
+ version_requirements: !ruby/object:Gem::Requirement
85
+ requirements:
86
+ - - "~>"
87
+ - !ruby/object:Gem::Version
88
+ version: '13.0'
89
+ - !ruby/object:Gem::Dependency
90
+ name: rspec
91
+ requirement: !ruby/object:Gem::Requirement
92
+ requirements:
93
+ - - "~>"
94
+ - !ruby/object:Gem::Version
95
+ version: '3.10'
96
+ type: :development
97
+ prerelease: false
98
+ version_requirements: !ruby/object:Gem::Requirement
99
+ requirements:
100
+ - - "~>"
101
+ - !ruby/object:Gem::Version
102
+ version: '3.10'
103
+ - !ruby/object:Gem::Dependency
104
+ name: rubocop
105
+ requirement: !ruby/object:Gem::Requirement
106
+ requirements:
107
+ - - "~>"
108
+ - !ruby/object:Gem::Version
109
+ version: '1.8'
110
+ type: :development
111
+ prerelease: false
112
+ version_requirements: !ruby/object:Gem::Requirement
113
+ requirements:
114
+ - - "~>"
115
+ - !ruby/object:Gem::Version
116
+ version: '1.8'
117
+ - !ruby/object:Gem::Dependency
118
+ name: simplecov
119
+ requirement: !ruby/object:Gem::Requirement
120
+ requirements:
121
+ - - "~>"
122
+ - !ruby/object:Gem::Version
123
+ version: '0.20'
124
+ type: :development
125
+ prerelease: false
126
+ version_requirements: !ruby/object:Gem::Requirement
127
+ requirements:
128
+ - - "~>"
129
+ - !ruby/object:Gem::Version
130
+ version: '0.20'
131
+ - !ruby/object:Gem::Dependency
132
+ name: webmock
133
+ requirement: !ruby/object:Gem::Requirement
134
+ requirements:
135
+ - - "~>"
136
+ - !ruby/object:Gem::Version
137
+ version: '3.11'
62
138
  type: :development
63
139
  prerelease: false
64
140
  version_requirements: !ruby/object:Gem::Requirement
65
141
  requirements:
66
142
  - - "~>"
67
143
  - !ruby/object:Gem::Version
68
- version: '10.0'
144
+ version: '3.11'
69
145
  description: Ruby gem for MailerLite API v2
70
146
  email:
71
147
  - jpalumickas@gmail.com
@@ -73,11 +149,13 @@ executables: []
73
149
  extensions: []
74
150
  extra_rdoc_files: []
75
151
  files:
152
+ - ".github/dependabot.yml"
153
+ - ".github/workflows/test.yml"
76
154
  - ".gitignore"
77
155
  - ".hound.yml"
78
156
  - ".rspec"
79
157
  - ".rubocop.yml"
80
- - ".travis.yml"
158
+ - CODE_OF_CONDUCT.md
81
159
  - CONTRIBUTING.md
82
160
  - Gemfile
83
161
  - LICENSE
@@ -117,8 +195,12 @@ files:
117
195
  homepage: https://github.com/jpalumickas/mailerlite-ruby
118
196
  licenses:
119
197
  - MIT
120
- metadata: {}
121
- post_install_message:
198
+ metadata:
199
+ bug_tracker_uri: https://github.com/jpalumickas/mailerlite-ruby/issues
200
+ changelog_uri: https://github.com/jpalumickas/mailerlite-ruby/releases
201
+ documentation_uri: https://github.com/jpalumickas/mailerlite-ruby/tree/master/examples
202
+ source_code_uri: https://github.com/jpalumickas/mailerlite-ruby
203
+ post_install_message:
122
204
  rdoc_options: []
123
205
  require_paths:
124
206
  - lib
@@ -126,15 +208,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
126
208
  requirements:
127
209
  - - ">="
128
210
  - !ruby/object:Gem::Version
129
- version: 2.2.0
211
+ version: 2.5.0
130
212
  required_rubygems_version: !ruby/object:Gem::Requirement
131
213
  requirements:
132
214
  - - ">="
133
215
  - !ruby/object:Gem::Version
134
216
  version: '0'
135
217
  requirements: []
136
- rubygems_version: 3.0.2
137
- signing_key:
218
+ rubygems_version: 3.2.5
219
+ signing_key:
138
220
  specification_version: 4
139
221
  summary: Ruby wrapper for MailerLite API v2
140
222
  test_files: []
@@ -1,41 +0,0 @@
1
- sudo: false
2
- bundler_args: --without development
3
-
4
- cache:
5
- bundler: true
6
-
7
- env:
8
- global:
9
- - CC_TEST_REPORTER_ID=1da21a01a5e29b3624aa81523fe36983a2b8d785f18046de30c17e1b6da1563a
10
-
11
- language: ruby
12
- rvm:
13
- - 2.2.0
14
- - 2.3.0
15
- - 2.4.0
16
- - 2.5.0
17
- - 2.6.0
18
- - ruby-head
19
-
20
- before_install:
21
- - gem install bundler -v '< 2'
22
-
23
- # After dropping support for Ruby 2.2, use:
24
- # before_install:
25
- # - gem update --system
26
- # - gem install bundler
27
-
28
- before_script:
29
- - curl -L https://codeclimate.com/downloads/test-reporter/test-reporter-latest-linux-amd64 > ./cc-test-reporter
30
- - chmod +x ./cc-test-reporter
31
- - ./cc-test-reporter before-build
32
-
33
- script:
34
- - bundle exec rspec
35
-
36
- after_script:
37
- - ./cc-test-reporter after-build --exit-code $TRAVIS_TEST_RESULT
38
-
39
- matrix:
40
- allow_failures:
41
- - rvm: ruby-head