beeminder 0.2.9 → 0.2.10
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 +5 -13
- checksums.yaml.gz.sig +2 -0
- data.tar.gz.sig +0 -0
- data/lib/beeminder/user.rb +26 -26
- data/lib/beeminder/version.rb +1 -1
- metadata +40 -20
- metadata.gz.sig +1 -0
checksums.yaml
CHANGED
@@ -1,15 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
|
5
|
-
data.tar.gz: !binary |-
|
6
|
-
OTBkNmMyMzdmOGM5YTk3ZTJlYjI5ZjIxNmI0MTU2ZWEwYjIxYTFlNA==
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: fe9446419e3fc9249d45e27dfdb7e93eaa2fd293
|
4
|
+
data.tar.gz: 940d2b2b7a75f34c276aef94a89d76b2f2624adc
|
7
5
|
SHA512:
|
8
|
-
metadata.gz:
|
9
|
-
|
10
|
-
OTcyODhkOWRjZWZmMGJjNWJhOTg2NjllNjQyYzg2NDMxZWUzZGNhYmFkMjdj
|
11
|
-
ZmI1NjIxODg2ZjA3NzIwYjJhYTA4NmIxMGExMDk2YzY3ZTQ5Njg=
|
12
|
-
data.tar.gz: !binary |-
|
13
|
-
NDI1ZjdlZDhkZTEyMmFiZWU0MTk0NjA1NTY0MjNhMTZmNWE2NGFlOTBhNzVm
|
14
|
-
MWE1YzhjNDhlODFkZTcyNmE1NjA2MzdhODc3NWE2N2UyZmE5NTJhZDU0ZjE1
|
15
|
-
YTYyOTZkZWZhOWZkNDJhMzFhNDA1YmZjMjBlYTc1YmQ5NmM2OGU=
|
6
|
+
metadata.gz: 375ad660e200645afa73bbf18df8b3717b7eb7dc945d7c9985a20bf695239d68b0819acab666bb0ff3bbac8e305dde35a47d714b292144ef6f0700283f4c3be9
|
7
|
+
data.tar.gz: 620545b90de4a56f0fd4cf785763dfc6a6bd2b0baaf18b6ddaa788461b246d725d011001da4e8907b5653a51cba237331a09f169ead72ceeb12dba4e74562668
|
checksums.yaml.gz.sig
ADDED
data.tar.gz.sig
ADDED
Binary file
|
data/lib/beeminder/user.rb
CHANGED
@@ -19,13 +19,13 @@ module Beeminder
|
|
19
19
|
|
20
20
|
# @return [true|false] Enforce user timezone for all passed times? Should be true unless you know what you're doing. (Default: `true`.)
|
21
21
|
attr_accessor :enforce_timezone
|
22
|
-
|
22
|
+
|
23
23
|
def initialize token, opts={}
|
24
24
|
opts = {
|
25
25
|
:auth_type => :personal,
|
26
26
|
:enforce_timezone => true,
|
27
27
|
}.merge(opts)
|
28
|
-
|
28
|
+
|
29
29
|
@token = token
|
30
30
|
@auth_type = opts[:auth_type]
|
31
31
|
@enforce_timezone = opts[:enforce_timezone]
|
@@ -39,7 +39,7 @@ module Beeminder
|
|
39
39
|
else
|
40
40
|
raise ArgumentError, "Auth type not supported, must be :personal or :oauth."
|
41
41
|
end
|
42
|
-
|
42
|
+
|
43
43
|
info = get "users/me.json"
|
44
44
|
|
45
45
|
@name = info["username"]
|
@@ -47,13 +47,13 @@ module Beeminder
|
|
47
47
|
@updated_at = DateTime.strptime(info["updated_at"].to_s, '%s').in_time_zone(@timezone)
|
48
48
|
end
|
49
49
|
|
50
|
-
# Enforce timezone for all passed times?
|
50
|
+
# Enforce timezone for all passed times?
|
51
51
|
#
|
52
52
|
# @return [true|false]
|
53
53
|
def enforce_timezone?
|
54
54
|
!!@enforce_timezone
|
55
55
|
end
|
56
|
-
|
56
|
+
|
57
57
|
# List of goals.
|
58
58
|
#
|
59
59
|
# @param filter [Symbol] filter goals, can be `:all` (default), `:frontburner` or `:backburner`
|
@@ -87,7 +87,7 @@ module Beeminder
|
|
87
87
|
dp = Beeminder::Datapoint.new :value => value, :comment => comment
|
88
88
|
goal.add dp
|
89
89
|
end
|
90
|
-
|
90
|
+
|
91
91
|
# Create new goal.
|
92
92
|
#
|
93
93
|
# @param opts [Hash] Goal options.
|
@@ -133,20 +133,20 @@ module Beeminder
|
|
133
133
|
# @return [Time] Converted time.
|
134
134
|
def convert_to_timezone time
|
135
135
|
Time.use_zone(@timezone){
|
136
|
-
|
136
|
+
|
137
137
|
time = time.to_time unless time.is_a?(Time)
|
138
138
|
Time.local(time.year, time.month, time.day, time.hour, time.min, time.sec)
|
139
|
-
|
139
|
+
|
140
140
|
}
|
141
141
|
end
|
142
142
|
|
143
143
|
private
|
144
|
-
|
144
|
+
|
145
145
|
# Establish HTTPS connection to API.
|
146
146
|
def _connection type, cmd, data
|
147
147
|
api = "https://www.beeminder.com/api/v1/#{cmd}"
|
148
148
|
data = {@token_type => @token}.merge(data)
|
149
|
-
|
149
|
+
|
150
150
|
url = URI.parse(api)
|
151
151
|
http = Net::HTTP.new(url.host, url.port)
|
152
152
|
http.read_timeout = 8640
|
@@ -159,24 +159,24 @@ module Beeminder
|
|
159
159
|
raise ArgumentError, "invalid timestamp: #{data["timestamp"]}"
|
160
160
|
end
|
161
161
|
end
|
162
|
-
|
162
|
+
|
163
163
|
json = ""
|
164
164
|
http.start do |http|
|
165
|
-
|
166
|
-
|
167
|
-
|
168
|
-
|
169
|
-
|
170
|
-
|
171
|
-
|
172
|
-
|
173
|
-
|
174
|
-
|
175
|
-
|
176
|
-
|
177
|
-
|
178
|
-
|
179
|
-
|
165
|
+
case type
|
166
|
+
when :post
|
167
|
+
req = Net::HTTP::Post.new(url.path)
|
168
|
+
req.set_form_data(data)
|
169
|
+
when :get
|
170
|
+
req = Net::HTTP::Get.new(url.path + "?" + data.to_query)
|
171
|
+
when :delete
|
172
|
+
req = Net::HTTP::Delete.new(url.path + "?" + data.to_query)
|
173
|
+
when :put
|
174
|
+
req = Net::HTTP::Put.new(url.path)
|
175
|
+
req.set_form_data(data)
|
176
|
+
else
|
177
|
+
raise "invalid connection type"
|
178
|
+
end
|
179
|
+
|
180
180
|
res = http.request(req)
|
181
181
|
if not res.is_a? Net::HTTPSuccess
|
182
182
|
raise "request failed: #{res.code} / #{res.body}"
|
data/lib/beeminder/version.rb
CHANGED
metadata
CHANGED
@@ -1,103 +1,123 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: beeminder
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.2.
|
4
|
+
version: 0.2.10
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- muflax
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
|
-
cert_chain:
|
11
|
-
|
10
|
+
cert_chain:
|
11
|
+
- |
|
12
|
+
-----BEGIN CERTIFICATE-----
|
13
|
+
MIIDLDCCAhSgAwIBAgIBATANBgkqhkiG9w0BAQUFADA8MQ0wCwYDVQQDDARtYWls
|
14
|
+
MRYwFAYKCZImiZPyLGQBGRYGbXVmbGF4MRMwEQYKCZImiZPyLGQBGRYDY29tMB4X
|
15
|
+
DTE0MDMxNzA1NTUwM1oXDTE1MDMxNzA1NTUwM1owPDENMAsGA1UEAwwEbWFpbDEW
|
16
|
+
MBQGCgmSJomT8ixkARkWBm11ZmxheDETMBEGCgmSJomT8ixkARkWA2NvbTCCASIw
|
17
|
+
DQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAMBwn+ZDlWYfoEevtvoQBKK+NBFA
|
18
|
+
U9iKN5Aa4g51ZjiFUtoasYeTVUvqKmkRDM+tFTjlTNRCMtFKZy+Fbw+Q2+JALBnk
|
19
|
+
isyJmRCxoWLxUds/XT40I0m+mtwP5etKr7g01lE3gsIM8644iEBGw41pG7F8nm2w
|
20
|
+
dxcs78uGx/Y89vH4xlP5utdq4lChCo60+jQWUBNdnRlrFoBerUrdEUWlj7HhOQSl
|
21
|
+
coJqx3UHhPw1e97CxC4r4IEO4vfNwMr3Uxxcv/idcQwDi5thDwtzjG3u4xwzL3xS
|
22
|
+
HSvktDccLmeF9hsWUGlmee87oQGqZvZTmRmLmpcpzsNxFcVJxGK72VfbsjUCAwEA
|
23
|
+
AaM5MDcwCQYDVR0TBAIwADALBgNVHQ8EBAMCBLAwHQYDVR0OBBYEFEEiWHZRn5hp
|
24
|
+
8ho98JIewpJitn3DMA0GCSqGSIb3DQEBBQUAA4IBAQCFr4wcczJG+SkvzaP+LPaB
|
25
|
+
PyDf6lhOYB5BbxteVc3qoK1bxOhMKRlzl9k5pzKbd8FCAokhojoPvUFkZuB7E2RB
|
26
|
+
VC1cDAdYr7s8CCNnUjH1nk3esXRyXGWBBTOlAc96SmbukEV+qVdf2CWnRRHxDtyZ
|
27
|
+
Ov/8JRksnmBUhPzUgAxsEZaX3eSLv/cJGjnOeEgNKA52FmY6S1/MNkLN743AXFfR
|
28
|
+
njhyNen7eGs/8Og1krIw4crmFCVawKI0LXuWTff/3zb8d9SZXZePbzPv+q0IG3ek
|
29
|
+
lmwpPc3Bdi/+i0PzT69bN5W+96Yp2JUDPmQXTG2QGwWDqEQF/BnHtlVQ/1w649V+
|
30
|
+
-----END CERTIFICATE-----
|
31
|
+
date: 2014-04-21 00:00:00.000000000 Z
|
12
32
|
dependencies:
|
13
33
|
- !ruby/object:Gem::Dependency
|
14
34
|
name: activesupport
|
15
35
|
requirement: !ruby/object:Gem::Requirement
|
16
36
|
requirements:
|
17
|
-
- -
|
37
|
+
- - ">="
|
18
38
|
- !ruby/object:Gem::Version
|
19
39
|
version: '3.2'
|
20
|
-
- - <
|
40
|
+
- - "<"
|
21
41
|
- !ruby/object:Gem::Version
|
22
42
|
version: '5'
|
23
43
|
type: :runtime
|
24
44
|
prerelease: false
|
25
45
|
version_requirements: !ruby/object:Gem::Requirement
|
26
46
|
requirements:
|
27
|
-
- -
|
47
|
+
- - ">="
|
28
48
|
- !ruby/object:Gem::Version
|
29
49
|
version: '3.2'
|
30
|
-
- - <
|
50
|
+
- - "<"
|
31
51
|
- !ruby/object:Gem::Version
|
32
52
|
version: '5'
|
33
53
|
- !ruby/object:Gem::Dependency
|
34
54
|
name: chronic
|
35
55
|
requirement: !ruby/object:Gem::Requirement
|
36
56
|
requirements:
|
37
|
-
- - ~>
|
57
|
+
- - "~>"
|
38
58
|
- !ruby/object:Gem::Version
|
39
59
|
version: '0.7'
|
40
60
|
type: :runtime
|
41
61
|
prerelease: false
|
42
62
|
version_requirements: !ruby/object:Gem::Requirement
|
43
63
|
requirements:
|
44
|
-
- - ~>
|
64
|
+
- - "~>"
|
45
65
|
- !ruby/object:Gem::Version
|
46
66
|
version: '0.7'
|
47
67
|
- !ruby/object:Gem::Dependency
|
48
68
|
name: json
|
49
69
|
requirement: !ruby/object:Gem::Requirement
|
50
70
|
requirements:
|
51
|
-
- -
|
71
|
+
- - ">="
|
52
72
|
- !ruby/object:Gem::Version
|
53
73
|
version: '0'
|
54
74
|
type: :runtime
|
55
75
|
prerelease: false
|
56
76
|
version_requirements: !ruby/object:Gem::Requirement
|
57
77
|
requirements:
|
58
|
-
- -
|
78
|
+
- - ">="
|
59
79
|
- !ruby/object:Gem::Version
|
60
80
|
version: '0'
|
61
81
|
- !ruby/object:Gem::Dependency
|
62
82
|
name: highline
|
63
83
|
requirement: !ruby/object:Gem::Requirement
|
64
84
|
requirements:
|
65
|
-
- - ~>
|
85
|
+
- - "~>"
|
66
86
|
- !ruby/object:Gem::Version
|
67
87
|
version: '1.6'
|
68
88
|
type: :runtime
|
69
89
|
prerelease: false
|
70
90
|
version_requirements: !ruby/object:Gem::Requirement
|
71
91
|
requirements:
|
72
|
-
- - ~>
|
92
|
+
- - "~>"
|
73
93
|
- !ruby/object:Gem::Version
|
74
94
|
version: '1.6'
|
75
95
|
- !ruby/object:Gem::Dependency
|
76
96
|
name: trollop
|
77
97
|
requirement: !ruby/object:Gem::Requirement
|
78
98
|
requirements:
|
79
|
-
- - ~>
|
99
|
+
- - "~>"
|
80
100
|
- !ruby/object:Gem::Version
|
81
101
|
version: '2'
|
82
102
|
type: :runtime
|
83
103
|
prerelease: false
|
84
104
|
version_requirements: !ruby/object:Gem::Requirement
|
85
105
|
requirements:
|
86
|
-
- - ~>
|
106
|
+
- - "~>"
|
87
107
|
- !ruby/object:Gem::Version
|
88
108
|
version: '2'
|
89
109
|
- !ruby/object:Gem::Dependency
|
90
110
|
name: tzinfo
|
91
111
|
requirement: !ruby/object:Gem::Requirement
|
92
112
|
requirements:
|
93
|
-
- -
|
113
|
+
- - ">="
|
94
114
|
- !ruby/object:Gem::Version
|
95
115
|
version: '0'
|
96
116
|
type: :runtime
|
97
117
|
prerelease: false
|
98
118
|
version_requirements: !ruby/object:Gem::Requirement
|
99
119
|
requirements:
|
100
|
-
- -
|
120
|
+
- - ">="
|
101
121
|
- !ruby/object:Gem::Version
|
102
122
|
version: '0'
|
103
123
|
description: Convenient access to Beeminder's API.
|
@@ -108,7 +128,7 @@ executables:
|
|
108
128
|
extensions: []
|
109
129
|
extra_rdoc_files: []
|
110
130
|
files:
|
111
|
-
- .gitignore
|
131
|
+
- ".gitignore"
|
112
132
|
- CHANGES.md
|
113
133
|
- Gemfile
|
114
134
|
- LICENSE.txt
|
@@ -130,12 +150,12 @@ require_paths:
|
|
130
150
|
- lib
|
131
151
|
required_ruby_version: !ruby/object:Gem::Requirement
|
132
152
|
requirements:
|
133
|
-
- -
|
153
|
+
- - ">="
|
134
154
|
- !ruby/object:Gem::Version
|
135
155
|
version: '0'
|
136
156
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
137
157
|
requirements:
|
138
|
-
- -
|
158
|
+
- - ">="
|
139
159
|
- !ruby/object:Gem::Version
|
140
160
|
version: '0'
|
141
161
|
requirements: []
|
metadata.gz.sig
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
��mj<���Q]0H�+_���V��<�N]n�+���S��
|