mixpanel_client 2.1.0 → 2.2.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.
data/README.md CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  Ruby access to the [Mixpanel](http://mixpanel.com/) web analytics tool.
4
4
 
5
- [Mixpanel Data API Reference](http://mixpanel.com/api/docs/guides/api/v2)
5
+ [Mixpanel Data API Reference](https://mixpanel.com/docs/api-documentation/data-export-api)
6
6
 
7
7
  ## Installation
8
8
 
@@ -56,7 +56,7 @@ Run external specs.
56
56
  vi config/mixpanel.yml
57
57
  rake spec:externals
58
58
 
59
- ## Pushing Gem
59
+ ## Releasing Gem
60
60
  Update version
61
61
 
62
62
  vi lib/mixpanel/version.rb
@@ -74,30 +74,33 @@ Create tag v2.0.2 and build and push mixpanel_client-2.0.2.gem to Rubygems
74
74
 
75
75
  ## Changelog
76
76
 
77
- ### 2.0.2
77
+ ### v2.1.0
78
+ * Updated json dependency to 1.6.
79
+
80
+ ### v2.0.2
78
81
  * Added timezone to available options.
79
82
  * All exceptions can be caught under Mixpanel::Error.
80
83
 
81
- ### 2.0.1
84
+ ### v2.0.1
82
85
  * Added options used in segmentation resources.
83
86
 
84
- ### 2.0.0
87
+ ### v2.0.0
85
88
  * Manually tested compatibility with Mixpanel gem.
86
89
 
87
- ### 2.0.0.beta2
90
+ ### v2.0.0.beta2
88
91
  * Added JSON to gemspec for ruby versions less than 1.9.
89
92
 
90
- ### 2.0.0.beta1
93
+ ### v2.0.0.beta1
91
94
  * Reverted to namespacing via module name because it's a better practice.
92
95
  I.e. Use `Mixpanel::Client` instead of `MixpanelClient`.
93
96
  * Added 'values' as an optional parameter
94
97
  * `gem install mixpanel_client --pre`
95
98
 
96
- ### 1.0.1
99
+ ### v1.0.1
97
100
  * Minor housekeeping and organizing
98
101
  * Refactored specs
99
102
 
100
- ### 1.0.0
103
+ ### v1.0.0
101
104
  * Changed "Mixpanel" class name to "MixpanelClient" to prevent naming collision in other
102
105
  libraries. [a710a84e8ba4b6f018b7](https://github.com/keolo/mixpanel_client/commit/a710a84e8ba4b6f018b7404ab9fabc8f08b4a4f3)
103
106
 
@@ -106,7 +109,6 @@ Create tag v2.0.2 and build and push mixpanel_client-2.0.2.gem to Rubygems
106
109
  [Jason Logsdon](https://github.com/jasonlogsdon)
107
110
  [James R](https://github.com/Cev)
108
111
  [Mike Ferrier](http://github.com/mferrier)
109
- [Mike Ferrier](http://github.com/mferrier)
110
112
  [Grzegorz Forysinski](http://github.com/railwaymen)
111
113
  [Nathan Chong](http://github.com/paramaw)
112
114
  [Paul McMahon](http://github.com/pwim)
@@ -9,13 +9,13 @@
9
9
  module Mixpanel
10
10
  # Return metrics from Mixpanel Data API
11
11
  class Client
12
- BASE_URI = 'http://mixpanel.com/api/2.0'
12
+ BASE_URI = 'https://mixpanel.com/api/2.0'
13
13
 
14
14
  attr_reader :uri
15
15
  attr_accessor :api_key, :api_secret
16
16
 
17
17
  # Availalbe options for a Mixpanel API request
18
- OPTIONS = [:resource, :event, :funnel, :name, :type, :unit, :interval, :limit, :format, :bucket,
18
+ OPTIONS = [:resource, :event, :funnel_id, :name, :type, :unit, :interval, :limit, :format, :bucket,
19
19
  :values, :from_date, :to_date, :on, :where, :buckets, :timezone]
20
20
 
21
21
  # Dynamically define accessor methods for each option
@@ -10,6 +10,6 @@ module Mixpanel
10
10
  # Return metrics from Mixpanel Data API
11
11
  class Client
12
12
  # Mixpanel::Client library version
13
- VERSION = '2.1.0'
13
+ VERSION = '2.2.0'
14
14
  end
15
15
  end
data/manual_test/basic.rb CHANGED
@@ -1,5 +1,7 @@
1
+ $LOAD_PATH.unshift(File.dirname(__FILE__))
2
+ $LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
1
3
  require 'rubygems'
2
- require 'lib/mixpanel_client'
4
+ require 'mixpanel_client'
3
5
  require 'yaml'
4
6
 
5
7
  config = YAML.load_file(File.dirname(__FILE__) + '/../config/mixpanel.yml')['mixpanel']
@@ -20,7 +20,7 @@ Gem::Specification.new do |s|
20
20
  s.require_paths = ['lib']
21
21
 
22
22
  s.add_runtime_dependency('json', '~> 1.6') if RUBY_VERSION < '1.9'
23
- s.add_development_dependency('bundler', '>=2.5.0')
23
+ s.add_development_dependency('bundler', '>=1.0.21')
24
24
  s.add_development_dependency('rake', '>=0.9.2.2')
25
25
  s.add_development_dependency('rdoc', '>=3.11')
26
26
  s.add_development_dependency('rspec', '>=2.5.0')
@@ -75,6 +75,7 @@ describe 'External calls to mixpanel' do
75
75
  end
76
76
 
77
77
  it 'should return retention' do
78
+ pending 'Retention now has its own endpoint.'
78
79
  data = @client.request do
79
80
  resource 'events/retention'
80
81
  event '["test-event"]'
@@ -86,6 +87,7 @@ describe 'External calls to mixpanel' do
86
87
  end
87
88
 
88
89
  it 'should return retention in csv format' do
90
+ pending 'Retention now has its own endpoint.'
89
91
  data = @client.request do
90
92
  resource 'events/retention'
91
93
  event '["test-event"]'
@@ -88,12 +88,12 @@ describe Mixpanel::Client do
88
88
 
89
89
  @client.request do
90
90
  # This is not a real request. It just lists all possible options.
91
- resource 'events'
92
- event '["test-event"]'
93
- funnel 'down-the-rabbit-hole'
94
- name 'ricky-bobby'
95
- type 'A'
96
- unit 'hour'
91
+ resource 'events'
92
+ event '["test-event"]'
93
+ funnel_id 'down-the-rabbit-hole'
94
+ name 'ricky-bobby'
95
+ type 'A'
96
+ unit 'hour'
97
97
  interval 24
98
98
  limit 5
99
99
  format 'csv'
@@ -5,11 +5,11 @@ describe Mixpanel::URI do
5
5
  describe '.mixpanel' do
6
6
  it 'should return a properly formatted mixpanel uri as a string (without an endpoint)' do
7
7
  resource, params = ['events', {:c => 'see', :a => 'ey'}]
8
- Mixpanel::URI.mixpanel(resource, params).should == 'http://mixpanel.com/api/2.0/events?a=ey&c=see'
8
+ Mixpanel::URI.mixpanel(resource, params).should == "#{Mixpanel::Client::BASE_URI}/events?a=ey&c=see"
9
9
  end
10
10
  it 'should return a properly formatted mixpanel uri as a string (with an endpoint)' do
11
11
  resource, params = ['events/top', {:c => 'see', :a => 'ey'}]
12
- Mixpanel::URI.mixpanel(resource, params).should == 'http://mixpanel.com/api/2.0/events/top?a=ey&c=see'
12
+ Mixpanel::URI.mixpanel(resource, params).should == "#{Mixpanel::Client::BASE_URI}/events/top?a=ey&c=see"
13
13
  end
14
14
  end
15
15
 
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mixpanel_client
3
3
  version: !ruby/object:Gem::Version
4
- hash: 11
4
+ hash: 7
5
5
  prerelease:
6
6
  segments:
7
7
  - 2
8
- - 1
8
+ - 2
9
9
  - 0
10
- version: 2.1.0
10
+ version: 2.2.0
11
11
  platform: ruby
12
12
  authors:
13
13
  - Keolo Keagy
@@ -15,7 +15,7 @@ autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
17
 
18
- date: 2012-01-11 00:00:00 Z
18
+ date: 2012-03-04 00:00:00 Z
19
19
  dependencies:
20
20
  - !ruby/object:Gem::Dependency
21
21
  name: json
@@ -40,12 +40,12 @@ dependencies:
40
40
  requirements:
41
41
  - - ">="
42
42
  - !ruby/object:Gem::Version
43
- hash: 27
43
+ hash: 61
44
44
  segments:
45
- - 2
46
- - 5
45
+ - 1
47
46
  - 0
48
- version: 2.5.0
47
+ - 21
48
+ version: 1.0.21
49
49
  type: :development
50
50
  version_requirements: *id002
51
51
  - !ruby/object:Gem::Dependency
@@ -172,7 +172,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
172
172
  requirements: []
173
173
 
174
174
  rubyforge_project: mixpanel_client
175
- rubygems_version: 1.8.10
175
+ rubygems_version: 1.8.15
176
176
  signing_key:
177
177
  specification_version: 3
178
178
  summary: Ruby Mixpanel API Client Library