mailerlite 1.7.0 → 1.12.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 794fa30b6010f9a52130a140f2988dcbb1562f888e853540db3b003800a49306
4
- data.tar.gz: 0c647281e82a14f2d433b3895a0539e7ed304616fef3a5fd95720b143ec77e6e
3
+ metadata.gz: 04f57fa638110e54a96f4c7a0cf9f9027736d3237663074ededcd614fd86af81
4
+ data.tar.gz: 5562645c220260c6b5350bcfdca83595d6cbb6f7559cb4a69da75c09f6e6cc25
5
5
  SHA512:
6
- metadata.gz: 82b306fcab32c2e7cd72468c50bff48770de081e53c8277c48fb70634701acafd42742a9610651b32f8cf2c03dcfb395fb667aa5f66d19602c3532fbe90c1ef0
7
- data.tar.gz: 972ba82291ca5f0426570f2d9cbda44305d752f928015d2d85ee29d7153e656cf71e0a3b004bc22206d9ff2032aca2fb19796c1733eea328772e7b5124a1c652
6
+ metadata.gz: d0c1f531cd080e115e341609764ed7192e3ca9cdebcb1fa4e0088e465388f73502dde00103443d3dbbea8553edfc2fc543fcd2041c103c8de6296f31f1c18882
7
+ data.tar.gz: d3e3f86c1a70719330ff1e9cacaa53180522c58ff7a95eb636df51c1b7b27ad14ad2b83a7443756a435e54d5b093f5100accb2baf402798cc55df77a766897bb
@@ -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]
11
+
12
+ runs-on: ubuntu-latest
13
+
14
+ steps:
15
+ - uses: actions/checkout@v1
16
+ - name: Set up Ruby ${{ matrix.ruby }}
17
+ uses: actions/setup-ruby@v1
18
+ with:
19
+ ruby-version: ${{ matrix.ruby }}
20
+ - name: Install dependencies
21
+ run: |
22
+ gem install bundler
23
+ bundle install --jobs 4 --retry 3
24
+ - name: RSpec
25
+ env:
26
+ CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
27
+ run: |
28
+ bundle exec rspec
29
+
30
+ rubocop:
31
+ name: RuboCop
32
+ runs-on: ubuntu-latest
33
+
34
+ steps:
35
+ - uses: actions/checkout@v1
36
+ - name: Set up Ruby
37
+ uses: actions/setup-ruby@v1
38
+ with:
39
+ ruby-version: 2.7
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
 
@@ -33,4 +34,5 @@ Style/DoubleNegation:
33
34
 
34
35
  Metrics/BlockLength:
35
36
  Exclude:
37
+ - '*.gemspec'
36
38
  - 'spec/**/*_spec.rb'
@@ -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.62'
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,20 @@ 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
69
66
 
70
- ## Copyright
71
- Copyright (c) 2019 Justas Palumickas. See [LICENSE][license] for details.
67
+ ## License
68
+
69
+ The package is available as open source under the terms of the [MIT License][license].
72
70
 
73
71
  [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
72
+ [codecov]: https://codecov.io/gh/jpalumickas/mailerlite-ruby
73
+ [github_actions]: https://github.com/jpalumickas/mailerlite-ruby/actions
77
74
 
78
75
  [license]: https://raw.githubusercontent.com/jpalumickas/mailerlite-ruby/master/LICENSE
79
76
  [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
@@ -24,6 +24,13 @@ client.campaign_action(id, action)
24
24
  client.campaign_by_status(status)
25
25
  ```
26
26
 
27
+ with options
28
+
29
+ ```ruby
30
+ client.campaign_by_status(:sent, order: :desc, limit: 5, offset: 10)
31
+ ```
32
+
33
+
27
34
  ## Remove a campaign
28
35
 
29
36
  ```ruby
@@ -33,8 +33,8 @@ html = "
Welcome,
Unsubscribe
"
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
@@ -6,6 +6,12 @@
6
6
  client.groups
7
7
  ```
8
8
 
9
+ with options
10
+
11
+ ```ruby
12
+ client.groups(limit: 5, offset: 10)
13
+ ```
14
+
9
15
  ## Get single group by ID
10
16
 
11
17
  ```ruby
@@ -5,3 +5,9 @@
5
5
  ```ruby
6
6
  client.segments
7
7
  ```
8
+
9
+ with options
10
+
11
+ ```ruby
12
+ client.segments(limit: 5, offset: 10, order: :desc)
13
+ ```
@@ -1,5 +1,17 @@
1
1
  # Subscribers
2
2
 
3
+ ## Get all subscribers
4
+
5
+ ```ruby
6
+ client.subscribers
7
+ ```
8
+
9
+ with options
10
+
11
+ ```ruby
12
+ client.subscribers(limit: 5, offset: 10)
13
+ ```
14
+
3
15
  ## Get single subscriber
4
16
 
5
17
  ```ruby
@@ -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.
@@ -59,10 +59,14 @@ module MailerLite
59
59
  #
60
60
  # @param status [String] possible values: 'sent', 'outbox', 'draft'
61
61
  # no value means 'sent'
62
+ # @param options [Hash] Options list. See more in MailerLite docs.
63
+ # @option options [Integer] :offset
64
+ # @option options [Integer] :limit
65
+ # @option options [String] :order asc or desc
62
66
  #
63
67
  # @return Response from API.
64
- def campaigns_by_status(status)
65
- connection.get("campaigns/#{status}")
68
+ def campaigns_by_status(status, options = {})
69
+ connection.get("campaigns/#{status}", options)
66
70
  end
67
71
 
68
72
  # Remove a campaign.
@@ -8,9 +8,14 @@ module MailerLite
8
8
  #
9
9
  # @see https://developers.mailerlite.com/v2/reference#groups
10
10
  #
11
+ # @param options [Hash] Options list. See more in MailerLite docs.
12
+ # @option options [Integer] :offset
13
+ # @option options [Integer] :limit
14
+ # @option options [String] :filters
15
+ #
11
16
  # @return [Array] Response from API.
12
- def groups
13
- connection.get('groups')
17
+ def groups(options = {})
18
+ connection.get('groups', options)
14
19
  end
15
20
 
16
21
  # Get single group by ID
@@ -8,9 +8,14 @@ module MailerLite
8
8
  #
9
9
  # @see https://developers.mailerlite.com/v2/reference#segments-1
10
10
  #
11
+ # @param options [Hash] Options list. See more in MailerLite docs.
12
+ # @option options [Integer] :offset
13
+ # @option options [Integer] :limit
14
+ # @option options [String] :order asc or desc
15
+ #
11
16
  # @return [Array] Response from API.
12
- def segments
13
- connection.get('segments')
17
+ def segments(options = {})
18
+ connection.get('segments', options)
14
19
  end
15
20
  end
16
21
  end
@@ -4,6 +4,19 @@ module MailerLite
4
4
  module Clients
5
5
  # MailerLite Subscribers
6
6
  module Subscribers
7
+ # Get subscribers
8
+ #
9
+ # @see https://developers.mailerlite.com/v2/reference#subscribers
10
+ #
11
+ # @param options [Hash] Options list. See more in MailerLite docs.
12
+ # @option options [Integer] :offset
13
+ # @option options [Integer] :limit
14
+ #
15
+ # @return [Hash] Response from API.
16
+ def subscribers(options = {})
17
+ connection.get('subscribers', options)
18
+ end
19
+
7
20
  # Get single subscriber
8
21
  #
9
22
  # @see https://developers.mailerlite.com/v2/reference#single-subscriber
@@ -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,15 +37,9 @@ 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
+ response = 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
44
 
51
45
  response
@@ -53,14 +47,27 @@ module MailerLite
53
47
 
54
48
  def connection
55
49
  conn_opts = {
56
- headers: { user_agent: client.config.user_agent },
57
50
  url: client.config.url,
58
- builder: middleware
51
+ builder: middleware,
52
+ headers: headers
59
53
  }
54
+ timeout = client.config.timeout
55
+ conn_opts[:request] = { timeout: timeout } unless timeout.nil?
60
56
 
61
57
  Faraday.new(conn_opts)
62
58
  end
63
59
 
60
+ def headers
61
+ headers = {
62
+ 'User-Agent' => client.config.user_agent,
63
+ 'Content-Type' => 'application/json'
64
+ }
65
+
66
+ headers['X-MailerLite-ApiKey'] = client.config.api_key if client.config.api_key
67
+
68
+ headers
69
+ end
70
+
64
71
  def middleware
65
72
  @middleware ||= Faraday::RackBuilder.new do |builder|
66
73
  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)
@@ -2,5 +2,5 @@
2
2
 
3
3
  module MailerLite
4
4
  # @return [String] Version number.
5
- VERSION = '1.7.0'.freeze
5
+ VERSION = '1.12.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'
33
+ spec.required_ruby_version = '>= 2.5.0'
27
34
 
28
- spec.add_dependency 'faraday', '~> 0.10'
29
- spec.add_dependency 'faraday_middleware', '~> 0.10'
35
+ spec.add_dependency 'faraday', '~> 1.0', '>= 1.0.1'
36
+ spec.add_dependency 'faraday_middleware', '~> 1.0'
30
37
  spec.add_dependency 'hashie', '>= 3.5.5'
31
38
 
32
- spec.add_development_dependency 'rake', '~> 10.0'
39
+ spec.add_development_dependency 'codecov', '~> 0.1'
40
+ spec.add_development_dependency 'pry', '~> 0.13'
41
+ spec.add_development_dependency 'rake', '~> 13.0'
42
+ spec.add_development_dependency 'rspec', '~> 3.9'
43
+ spec.add_development_dependency 'rubocop', '~> 0.86'
44
+ spec.add_development_dependency 'simplecov', '~> 0.18'
45
+ spec.add_development_dependency 'webmock', '~> 3.8'
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.7.0
4
+ version: 1.12.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-01-09 00:00:00.000000000 Z
11
+ date: 2020-06-29 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: faraday
@@ -16,28 +16,34 @@ 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
@@ -52,20 +58,104 @@ dependencies:
52
58
  - - ">="
53
59
  - !ruby/object:Gem::Version
54
60
  version: 3.5.5
61
+ - !ruby/object:Gem::Dependency
62
+ name: codecov
63
+ requirement: !ruby/object:Gem::Requirement
64
+ requirements:
65
+ - - "~>"
66
+ - !ruby/object:Gem::Version
67
+ version: '0.1'
68
+ type: :development
69
+ prerelease: false
70
+ version_requirements: !ruby/object:Gem::Requirement
71
+ requirements:
72
+ - - "~>"
73
+ - !ruby/object:Gem::Version
74
+ version: '0.1'
75
+ - !ruby/object:Gem::Dependency
76
+ name: pry
77
+ requirement: !ruby/object:Gem::Requirement
78
+ requirements:
79
+ - - "~>"
80
+ - !ruby/object:Gem::Version
81
+ version: '0.13'
82
+ type: :development
83
+ prerelease: false
84
+ version_requirements: !ruby/object:Gem::Requirement
85
+ requirements:
86
+ - - "~>"
87
+ - !ruby/object:Gem::Version
88
+ version: '0.13'
55
89
  - !ruby/object:Gem::Dependency
56
90
  name: rake
57
91
  requirement: !ruby/object:Gem::Requirement
58
92
  requirements:
59
93
  - - "~>"
60
94
  - !ruby/object:Gem::Version
61
- version: '10.0'
95
+ version: '13.0'
96
+ type: :development
97
+ prerelease: false
98
+ version_requirements: !ruby/object:Gem::Requirement
99
+ requirements:
100
+ - - "~>"
101
+ - !ruby/object:Gem::Version
102
+ version: '13.0'
103
+ - !ruby/object:Gem::Dependency
104
+ name: rspec
105
+ requirement: !ruby/object:Gem::Requirement
106
+ requirements:
107
+ - - "~>"
108
+ - !ruby/object:Gem::Version
109
+ version: '3.9'
110
+ type: :development
111
+ prerelease: false
112
+ version_requirements: !ruby/object:Gem::Requirement
113
+ requirements:
114
+ - - "~>"
115
+ - !ruby/object:Gem::Version
116
+ version: '3.9'
117
+ - !ruby/object:Gem::Dependency
118
+ name: rubocop
119
+ requirement: !ruby/object:Gem::Requirement
120
+ requirements:
121
+ - - "~>"
122
+ - !ruby/object:Gem::Version
123
+ version: '0.86'
124
+ type: :development
125
+ prerelease: false
126
+ version_requirements: !ruby/object:Gem::Requirement
127
+ requirements:
128
+ - - "~>"
129
+ - !ruby/object:Gem::Version
130
+ version: '0.86'
131
+ - !ruby/object:Gem::Dependency
132
+ name: simplecov
133
+ requirement: !ruby/object:Gem::Requirement
134
+ requirements:
135
+ - - "~>"
136
+ - !ruby/object:Gem::Version
137
+ version: '0.18'
138
+ type: :development
139
+ prerelease: false
140
+ version_requirements: !ruby/object:Gem::Requirement
141
+ requirements:
142
+ - - "~>"
143
+ - !ruby/object:Gem::Version
144
+ version: '0.18'
145
+ - !ruby/object:Gem::Dependency
146
+ name: webmock
147
+ requirement: !ruby/object:Gem::Requirement
148
+ requirements:
149
+ - - "~>"
150
+ - !ruby/object:Gem::Version
151
+ version: '3.8'
62
152
  type: :development
63
153
  prerelease: false
64
154
  version_requirements: !ruby/object:Gem::Requirement
65
155
  requirements:
66
156
  - - "~>"
67
157
  - !ruby/object:Gem::Version
68
- version: '10.0'
158
+ version: '3.8'
69
159
  description: Ruby gem for MailerLite API v2
70
160
  email:
71
161
  - jpalumickas@gmail.com
@@ -73,11 +163,12 @@ executables: []
73
163
  extensions: []
74
164
  extra_rdoc_files: []
75
165
  files:
166
+ - ".github/workflows/test.yml"
76
167
  - ".gitignore"
77
168
  - ".hound.yml"
78
169
  - ".rspec"
79
170
  - ".rubocop.yml"
80
- - ".travis.yml"
171
+ - CODE_OF_CONDUCT.md
81
172
  - CONTRIBUTING.md
82
173
  - Gemfile
83
174
  - LICENSE
@@ -117,8 +208,12 @@ files:
117
208
  homepage: https://github.com/jpalumickas/mailerlite-ruby
118
209
  licenses:
119
210
  - MIT
120
- metadata: {}
121
- post_install_message:
211
+ metadata:
212
+ bug_tracker_uri: https://github.com/jpalumickas/mailerlite-ruby/issues
213
+ changelog_uri: https://github.com/jpalumickas/mailerlite-ruby/releases
214
+ documentation_uri: https://github.com/jpalumickas/mailerlite-ruby/tree/master/examples
215
+ source_code_uri: https://github.com/jpalumickas/mailerlite-ruby
216
+ post_install_message:
122
217
  rdoc_options: []
123
218
  require_paths:
124
219
  - lib
@@ -126,15 +221,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
126
221
  requirements:
127
222
  - - ">="
128
223
  - !ruby/object:Gem::Version
129
- version: 2.2.0
224
+ version: 2.5.0
130
225
  required_rubygems_version: !ruby/object:Gem::Requirement
131
226
  requirements:
132
227
  - - ">="
133
228
  - !ruby/object:Gem::Version
134
229
  version: '0'
135
230
  requirements: []
136
- rubygems_version: 3.0.2
137
- signing_key:
231
+ rubygems_version: 3.1.2
232
+ signing_key:
138
233
  specification_version: 4
139
234
  summary: Ruby wrapper for MailerLite API v2
140
235
  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