parallel588-klaviyo 0.5.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 ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 8c1590f38a286fc1aa47477ecd21dd41c0b8402f
4
+ data.tar.gz: d0ccd4e0cde4dd5fabea415445f6906321ff08c1
5
+ SHA512:
6
+ metadata.gz: 5faa459e25ce7f6ee3f88a7d459edad758f2941d287db0c948bb4ffd36154dc19960d41705fc705be975f2b400c7287f6103c13171edbe7dbec2bf1f13a34067
7
+ data.tar.gz: 8ba7172374d3254aa53fb6dab6ec577314b52342378c694fe5f10dd68353c4369a51d37b534b75e8ffaf207152da728f9468e9133990e52ff471798b338bf40d
data/.gitignore ADDED
@@ -0,0 +1,9 @@
1
+ /.bundle/
2
+ /.yardoc
3
+ /Gemfile.lock
4
+ /_yardoc/
5
+ /coverage/
6
+ /doc/
7
+ /pkg/
8
+ /spec/reports/
9
+ /tmp/
data/.rspec ADDED
@@ -0,0 +1,2 @@
1
+ --format documentation
2
+ --color
data/.rubocop.yml ADDED
@@ -0,0 +1,152 @@
1
+ AllCops:
2
+ TargetRubyVersion: 2.3
3
+ Rails: true
4
+ Exclude:
5
+ - "bin/**/*"
6
+ - "db/schema.rb"
7
+
8
+ # # Commonly used screens these days easily fit more than 80 characters.
9
+ # Metrics/LineLength:
10
+ # Max: 120
11
+
12
+ # Too short methods lead to extraction of single-use methods, whih can make
13
+ # the code easier to read (by naming things), but can also clutter the class
14
+ Metrics/MethodLength:
15
+ Max: 20
16
+
17
+ # # The guiding principle of classes is SRP, SRP can't be accurately measured by LoC
18
+ # Metrics/ClassLength:
19
+ # Max: 1500
20
+ # Metrics/ModuleLength:
21
+ # Max: 1500
22
+
23
+ # # Raise AbcSize from 15 to 20
24
+ # Metrics/AbcSize:
25
+ # Max: 20
26
+
27
+ # # No space makes the method definition shorter and differentiates
28
+ # # from a regular assignment.
29
+ # Style/SpaceAroundEqualsInParameterDefault:
30
+ # EnforcedStyle: no_space
31
+
32
+ # # Single quotes being faster is hardly measurable and only affects parse time.
33
+ # # Enforcing double quotes reduces the times where you need to change them
34
+ # # when introducing an interpolation. Use single quotes only if their semantics
35
+ # # are needed.
36
+ # Style/StringLiterals:
37
+ # EnforcedStyle: double_quotes
38
+
39
+ # # We do not need to support Ruby 1.9, so this is good to use.
40
+ # Style/SymbolArray:
41
+ # Enabled: true
42
+
43
+ # # Most readable form.
44
+ # Style/AlignHash:
45
+ # EnforcedHashRocketStyle: table
46
+ # EnforcedColonStyle: table
47
+
48
+ # # Mixing the styles looks just silly.
49
+ # Style/HashSyntax:
50
+ # EnforcedStyle: ruby19_no_mixed_keys
51
+
52
+ # # has_key? and has_value? are far more readable than key? and value?
53
+ # Style/DeprecatedHashMethods:
54
+ # Enabled: false
55
+
56
+ # # String#% is by far the least verbose and only object oriented variant.
57
+ # Style/FormatString:
58
+ # EnforcedStyle: percent
59
+
60
+ # Style/CollectionMethods:
61
+ # Enabled: true
62
+ # PreferredMethods:
63
+ # # inject seems more common in the community.
64
+ # reduce: "inject"
65
+
66
+
67
+ # # Either allow this style or don't. Marking it as safe with parenthesis
68
+ # # is silly. Let's try to live without them for now.
69
+ # Style/ParenthesesAroundCondition:
70
+ # AllowSafeAssignment: false
71
+ # Lint/AssignmentInCondition:
72
+ # AllowSafeAssignment: false
73
+
74
+ # # A specialized exception class will take one or more arguments and construct the message from it.
75
+ # # So both variants make sense.
76
+ # Style/RaiseArgs:
77
+ # Enabled: false
78
+
79
+ # # Indenting the chained dots beneath each other is not supported by this cop,
80
+ # # see https://github.com/bbatsov/rubocop/issues/1633
81
+ # Style/MultilineOperationIndentation:
82
+ # Enabled: false
83
+
84
+ # # Fail is an alias of raise. Avoid aliases, it's more cognitive load for no gain.
85
+ # # The argument that fail should be used to abort the program is wrong too,
86
+ # # there's Kernel#abort for that.
87
+ # Style/SignalException:
88
+ # EnforcedStyle: only_raise
89
+
90
+ # # Suppressing exceptions can be perfectly fine, and be it to avoid to
91
+ # # explicitly type nil into the rescue since that's what you want to return,
92
+ # # or suppressing LoadError for optional dependencies
93
+ # Lint/HandleExceptions:
94
+ # Enabled: false
95
+
96
+ # Style/SpaceInsideBlockBraces:
97
+ # # The space here provides no real gain in readability while consuming
98
+ # # horizontal space that could be used for a better parameter name.
99
+ # # Also {| differentiates better from a hash than { | does.
100
+ # SpaceBeforeBlockParameters: false
101
+
102
+ # # No trailing space differentiates better from the block:
103
+ # # foo} means hash, foo } means block.
104
+ # Style/SpaceInsideHashLiteralBraces:
105
+ # EnforcedStyle: no_space
106
+
107
+ # # { ... } for multi-line blocks is okay, follow Weirichs rule instead:
108
+ # # https://web.archive.org/web/20140221124509/http://onestepback.org/index.cgi/Tech/Ruby/BraceVsDoEnd.rdoc
109
+ # Style/BlockDelimiters:
110
+ # Enabled: false
111
+
112
+ # # Enforcing -> would be nice, but not at the cost of enforcing lambda { } for
113
+ # # multiline lambdas.
114
+ # Style/Lambda:
115
+ # Enabled: false
116
+
117
+ # # do / end blocks should be used for side effects,
118
+ # # methods that run a block for side effects and have
119
+ # # a useful return value are rare, assign the return
120
+ # # value to a local variable for those cases.
121
+ # Style/MethodCalledOnDoEndBlock:
122
+ # Enabled: true
123
+
124
+ # # Enforcing the names of variables? To single letter ones? Just no.
125
+ # Style/SingleLineBlockParams:
126
+ # Enabled: false
127
+
128
+ # # Shadowing outer local variables with block parameters is often useful
129
+ # # to not reinvent a new name for the same thing, it highlights the relation
130
+ # # between the outer variable and the parameter. The cases where it's actually
131
+ # # confusing are rare, and usually bad for other reasons already, for example
132
+ # # because the method is too long.
133
+ # Lint/ShadowingOuterLocalVariable:
134
+ # Enabled: false
135
+
136
+ # # Check with yard instead.
137
+ # Style/Documentation:
138
+ # Enabled: false
139
+
140
+ # # This is just silly. Calling the argument `other` in all cases makes no sense.
141
+ # Style/OpMethod:
142
+ # Enabled: false
143
+
144
+ # # There are valid cases, for example debugging Cucumber steps,
145
+ # # also they'll fail CI anyway
146
+ # Lint/Debugger:
147
+ # Enabled: false
148
+
149
+
150
+ # # Reset some HoundCI changes back to Rubocop defaults
151
+ # Style/DotPosition:
152
+ # EnforcedStyle: leading
data/.travis.yml ADDED
@@ -0,0 +1,4 @@
1
+ language: ruby
2
+ rvm:
3
+ - 2.3.0
4
+ before_install: gem install bundler -v 1.11.2
data/Gemfile ADDED
@@ -0,0 +1,4 @@
1
+ source 'https://rubygems.org'
2
+
3
+ # Specify your gem's dependencies in klaviyo.gemspec
4
+ gemspec
data/README.md ADDED
@@ -0,0 +1,36 @@
1
+ # Klaviyo
2
+
3
+ Welcome to your new gem! In this directory, you'll find the files you need to be able to package up your Ruby library into a gem. Put your Ruby code in the file `lib/klaviyo`. To experiment with that code, run `bin/console` for an interactive prompt.
4
+
5
+ TODO: Delete this and the text above, and describe your gem
6
+
7
+ ## Installation
8
+
9
+ Add this line to your application's Gemfile:
10
+
11
+ ```ruby
12
+ gem 'klaviyo'
13
+ ```
14
+
15
+ And then execute:
16
+
17
+ $ bundle
18
+
19
+ Or install it yourself as:
20
+
21
+ $ gem install klaviyo
22
+
23
+ ## Usage
24
+
25
+ TODO: Write usage instructions here
26
+
27
+ ## Development
28
+
29
+ After checking out the repo, run `bin/setup` to install dependencies. Then, run `rake spec` to run the tests. You can also run `bin/console` for an interactive prompt that will allow you to experiment.
30
+
31
+ To install this gem onto your local machine, run `bundle exec rake install`. To release a new version, update the version number in `version.rb`, and then run `bundle exec rake release`, which will create a git tag for the version, push git commits and tags, and push the `.gem` file to [rubygems.org](https://rubygems.org).
32
+
33
+ ## Contributing
34
+
35
+ Bug reports and pull requests are welcome on GitHub at https://github.com/[USERNAME]/klaviyo.
36
+
data/Rakefile ADDED
@@ -0,0 +1,6 @@
1
+ require "bundler/gem_tasks"
2
+ require "rspec/core/rake_task"
3
+
4
+ RSpec::Core::RakeTask.new(:spec)
5
+
6
+ task :default => :spec
data/bin/console ADDED
@@ -0,0 +1,14 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ require "bundler/setup"
4
+ require "klaviyo"
5
+
6
+ # You can add fixtures and/or initialization code here to make experimenting
7
+ # with your gem easier. You can also use a different console, if you like.
8
+
9
+ # (If you use this, don't forget to add pry to your Gemfile!)
10
+ # require "pry"
11
+ # Pry.start
12
+
13
+ require "irb"
14
+ IRB.start
data/bin/setup ADDED
@@ -0,0 +1,8 @@
1
+ #!/usr/bin/env bash
2
+ set -euo pipefail
3
+ IFS=$'\n\t'
4
+ set -vx
5
+
6
+ bundle install
7
+
8
+ # Do any other automated setup that you need to do here
data/klaviyo.gemspec ADDED
@@ -0,0 +1,30 @@
1
+ # coding: utf-8
2
+ lib = File.expand_path('../lib', __FILE__)
3
+ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
+ require 'klaviyo/version'
5
+
6
+ Gem::Specification.new do |spec|
7
+ spec.name = "parallel588-klaviyo"
8
+ spec.version = Klaviyo::VERSION
9
+ spec.authors = ["Maxim Pechnikov"]
10
+ spec.email = ["parallel588@gmail.com"]
11
+ spec.summary = 'You heard us, a Ruby wrapper for the Klaviyo API'
12
+ spec.description = 'Ruby wrapper for the Klaviyo API'
13
+ spec.homepage = 'https://www.klaviyo.com/'
14
+
15
+ spec.files = `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
16
+ spec.bindir = "exe"
17
+ spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
18
+ spec.require_paths = ["lib"]
19
+
20
+ spec.add_runtime_dependency('virtus', '~> 1.0', '>= 1.0.5')
21
+ spec.add_runtime_dependency('json', '~> 1.8')
22
+ spec.add_runtime_dependency('faraday', '~> 0.9.2')
23
+ spec.add_runtime_dependency('faraday_middleware', '~> 0.10')
24
+ spec.add_runtime_dependency('activesupport', ['>= 3.1', '< 6.0'])
25
+
26
+ spec.add_development_dependency 'bundler', '~> 1.11'
27
+ spec.add_development_dependency 'rake', '~> 10.0'
28
+ spec.add_development_dependency 'rspec', '~> 3.0'
29
+ spec.add_development_dependency 'pry', '~> 0.10.3'
30
+ end