memotoo 2.0.0 → 2.0.1
Sign up to get free protection for your applications and to get access to all the features.
- data/Gemfile +8 -0
- data/Gemfile.lock +7 -5
- data/README.rdoc +16 -9
- data/VERSION +1 -1
- data/lib/memotoo.rb +8 -10
- data/lib/memotoo/core-ext/hash.rb +11 -13
- data/lib/memotoo/main.rb +50 -40
- data/memotoo.gemspec +8 -3
- data/test/test_memotoo.rb +5 -5
- data/test/test_soapobjects.rb +2 -5
- metadata +48 -17
- data/lib/memotoo/core-ext/kernel.rb +0 -10
data/Gemfile
CHANGED
@@ -4,6 +4,8 @@ source "http://rubygems.org"
|
|
4
4
|
gem "i18n"
|
5
5
|
gem "activesupport", ">= 2.3.5"
|
6
6
|
gem "savon", "~> 0.9.2"
|
7
|
+
gem 'httpi', "0.9.4" # for ruby 1.9.2 support
|
8
|
+
gem 'rake', '0.8.7' # probs in 0.9.2
|
7
9
|
|
8
10
|
# Add dependencies to develop your gem here.
|
9
11
|
# Include everything needed to run rake, tests, features, etc.
|
@@ -13,4 +15,10 @@ group :development do
|
|
13
15
|
gem "bundler", "~> 1.0.0"
|
14
16
|
gem "jeweler", "~> 1.5.2"
|
15
17
|
gem "rcov", ">= 0"
|
18
|
+
|
19
|
+
# needed for switching between ruby 1.8.7 and 1.9.2 for debugging
|
20
|
+
#gem 'ruby-debug19', :require => 'ruby-debug'
|
21
|
+
#gem 'linecache', "0.43"
|
22
|
+
#gem 'ruby-debug'
|
23
|
+
|
16
24
|
end
|
data/Gemfile.lock
CHANGED
@@ -4,10 +4,10 @@ GEM
|
|
4
4
|
activesupport (3.0.8)
|
5
5
|
builder (3.0.0)
|
6
6
|
git (1.2.5)
|
7
|
-
gyoku (0.4.
|
7
|
+
gyoku (0.4.4)
|
8
8
|
builder (>= 2.1.2)
|
9
|
-
httpi (0.9.
|
10
|
-
ntlm-http (>= 0.1.1)
|
9
|
+
httpi (0.9.4)
|
10
|
+
pyu-ntlm-http (>= 0.1.3.1)
|
11
11
|
rack
|
12
12
|
i18n (0.6.0)
|
13
13
|
jeweler (1.5.2)
|
@@ -15,8 +15,8 @@ GEM
|
|
15
15
|
git (>= 1.2.5)
|
16
16
|
rake
|
17
17
|
nokogiri (1.4.4)
|
18
|
-
nori (0.2.
|
19
|
-
ntlm-http (0.1.1)
|
18
|
+
nori (0.2.3)
|
19
|
+
pyu-ntlm-http (0.1.3.1)
|
20
20
|
rack (1.1.2)
|
21
21
|
rake (0.8.7)
|
22
22
|
rcov (0.9.9)
|
@@ -34,9 +34,11 @@ PLATFORMS
|
|
34
34
|
DEPENDENCIES
|
35
35
|
activesupport (>= 2.3.5)
|
36
36
|
bundler (~> 1.0.0)
|
37
|
+
httpi (= 0.9.4)
|
37
38
|
i18n
|
38
39
|
jeweler (~> 1.5.2)
|
39
40
|
rack (~> 1.1.2)
|
41
|
+
rake (= 0.8.7)
|
40
42
|
rcov
|
41
43
|
savon (~> 0.9.2)
|
42
44
|
shoulda
|
data/README.rdoc
CHANGED
@@ -4,7 +4,9 @@
|
|
4
4
|
|
5
5
|
The memotoo-gem is a soap(savon)-wrapper to (easy) access your {memotoo}[https://www.memotoo.com/index-saleshype.php] contacts.
|
6
6
|
|
7
|
-
Add, get, search, modify and delete your memotoo contacts,
|
7
|
+
Add, get, search, modify, sync and delete your memotoo contacts, bookmarks, notes, event and tasks.
|
8
|
+
|
9
|
+
<b>Works now an Ruby 1.8.7 and Ruby 1.9.2 !!!</b>
|
8
10
|
|
9
11
|
== You need
|
10
12
|
you need a memotoo-credential (username/passwd) to use this gem
|
@@ -77,9 +79,7 @@ bookmarks:
|
|
77
79
|
@connect.deleteBookmark(12345)
|
78
80
|
|
79
81
|
|
80
|
-
Requirements:
|
81
|
-
|
82
|
-
for the objects:
|
82
|
+
Requirements for the objects:
|
83
83
|
|
84
84
|
Contact:: :lastname
|
85
85
|
ContactGroup:: :name
|
@@ -91,15 +91,15 @@ Event:: :title, :dateBegin, :dateEnd
|
|
91
91
|
Holiday:: :description, :dateBegin, :dateEnd
|
92
92
|
Task:: :title
|
93
93
|
|
94
|
-
for the methods:
|
94
|
+
Requirements for the methods:
|
95
95
|
|
96
|
-
searchmethod::
|
96
|
+
searchmethod:: minimum a hash with a symbol search and your searchstring
|
97
97
|
id:: id of record, integer
|
98
98
|
get...Sync:: datetime, format YYYY-MM-DD HH:MM:SS - "2010-02-23 10:00:00"
|
99
99
|
modify:: id of record, integer
|
100
100
|
add and modify:: need always the object requirements
|
101
101
|
|
102
|
-
|
102
|
+
Be careful with used dates:
|
103
103
|
|
104
104
|
Holiday::
|
105
105
|
dateBegin:: "2011-01-01", Format: YYYY-MM-DD
|
@@ -120,9 +120,12 @@ You can now use the gem rubygems-test for easy testing this gem.
|
|
120
120
|
|
121
121
|
gem test memotoo
|
122
122
|
|
123
|
-
See my testresult here: http://test.rubygems.org/gems/memotoo/v/2.0.
|
123
|
+
See my testresult here: http://test.rubygems.org/gems/memotoo/v/2.0.1/test_results/1682
|
124
|
+
|
125
|
+
my testresult for ruby 1.9.2 here:
|
126
|
+
http://test.rubygems.org/gems/memotoo/v/2.0.1/test_results/1681
|
124
127
|
|
125
|
-
(To make a fast functional test only contact will be tested - goto test_soapobjects.rb line
|
128
|
+
(To make a fast functional test only contact will be tested - goto test_soapobjects.rb line 9 and uncomment it for all soapobject-tests)
|
126
129
|
|
127
130
|
==Documentation
|
128
131
|
|
@@ -132,6 +135,10 @@ and memotoo api-documentation
|
|
132
135
|
|
133
136
|
https://www.memotoo.com/index.php?rub=api#SOAP-server.php
|
134
137
|
|
138
|
+
== Changelog V. 2.0.1
|
139
|
+
|
140
|
+
some code refactoring and support for ruby >=1.9.2
|
141
|
+
|
135
142
|
== Changelog V. 2.0.0
|
136
143
|
|
137
144
|
I create all methods now dynamically. This reduced the code dramatically.
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
2.0.
|
1
|
+
2.0.1
|
data/lib/memotoo.rb
CHANGED
@@ -3,7 +3,6 @@ require 'active_support/inflector'
|
|
3
3
|
require "savon"
|
4
4
|
require "memotoo/main"
|
5
5
|
require "memotoo/core-ext/hash"
|
6
|
-
require "memotoo/core-ext/kernel"
|
7
6
|
|
8
7
|
class Memotoo
|
9
8
|
|
@@ -55,21 +54,20 @@ module Savon # :nodoc: all
|
|
55
54
|
end
|
56
55
|
end
|
57
56
|
|
58
|
-
#Finished in
|
57
|
+
#Finished in 41.165241 seconds.
|
59
58
|
|
60
|
-
#
|
59
|
+
#74 tests, 74 assertions, 0 failures, 0 errors
|
61
60
|
#+----------------------------------------------------+-------+-------+--------+
|
62
61
|
#| File | Lines | LOC | COV |
|
63
62
|
#+----------------------------------------------------+-------+-------+--------+
|
64
|
-
#|lib/memotoo.rb |
|
65
|
-
#|lib/memotoo/core-ext/hash.rb |
|
66
|
-
#|lib/memotoo/
|
67
|
-
#|lib/memotoo/main.rb | 280 | 77 | 100.0% |
|
63
|
+
#|lib/memotoo.rb | 74 | 33 | 100.0% |
|
64
|
+
#|lib/memotoo/core-ext/hash.rb | 39 | 25 | 100.0% |
|
65
|
+
#|lib/memotoo/main.rb | 291 | 88 | 100.0% |
|
68
66
|
#+----------------------------------------------------+-------+-------+--------+
|
69
|
-
#|Total |
|
67
|
+
#|Total | 404 | 146 | 100.0% |
|
70
68
|
#+----------------------------------------------------+-------+-------+--------+
|
71
|
-
#100.0%
|
69
|
+
#100.0% 3 file(s) 404 Lines 146 LOC
|
72
70
|
|
73
|
-
#Generated on
|
71
|
+
#Generated on Thu Jun 16 02:15:11 +0200 2011 with rcov 0.9.8
|
74
72
|
|
75
73
|
|
@@ -24,18 +24,16 @@ class Hash # :nodoc: all
|
|
24
24
|
sought_value
|
25
25
|
end
|
26
26
|
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
27
|
+
# Returns a new Hash with +self+ and +other_hash+ merged recursively.
|
28
|
+
# Modifies the receiver in place.
|
29
|
+
# => see this function also in savon gem
|
30
|
+
# got problems in my test and had to include it here...
|
31
|
+
def deep_merge_me!(other_hash)
|
32
|
+
other_hash.each_pair do |k,v|
|
33
|
+
tv = self[k]
|
34
|
+
self[k] = tv.is_a?(Hash) && v.is_a?(Hash) ? tv.deep_merge_me!(v) : v
|
35
|
+
end
|
36
|
+
self
|
37
|
+
end unless defined? deep_merge!
|
40
38
|
|
41
39
|
end
|
data/lib/memotoo/main.rb
CHANGED
@@ -32,73 +32,79 @@ class Memotoo
|
|
32
32
|
|
33
33
|
# the accessible soap objects
|
34
34
|
soapobjects = %w{Contact ContactGroup Bookmark BookmarkFolder Note CalendarCategory Event Holiday Task}
|
35
|
+
methods = %w{add search get modify sync delete }
|
35
36
|
|
36
37
|
soapobjects.each do |soapobject|
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
38
|
+
symbol=soapobject.underscore.to_sym # Contact -> :contact
|
39
|
+
|
40
|
+
action={} # action = generated method names in a hash e.g. {:add=>"addContact", :get=>"getContact"} for this soapobject
|
41
|
+
methods.each do |newmethod|
|
42
|
+
action[newmethod.to_sym]=newmethod+soapobject
|
43
|
+
action[newmethod.to_sym]="get" << soapobject << "Sync" if newmethod=="sync"
|
44
|
+
end
|
42
45
|
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
+
selfclass.send(:define_method, action[:add]) do |details|
|
47
|
+
detailsApicall(action[:add],{symbol => details},[:id]) if fields?(details, NEEDS[symbol])
|
48
|
+
end
|
46
49
|
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
# modify
|
56
|
-
methodname="modify"+soapobject
|
57
|
-
selfclass.send(:define_method, methodname) { |details| output(detailsApicall({symbol => details}), :ok) if fields?(details, [NEEDS[symbol], :id].flatten!) }
|
50
|
+
selfclass.send(:define_method, action[:modify]) do |details|
|
51
|
+
detailsApicall(action[:modify],{symbol => details},[:ok]) if fields?(details, [NEEDS[symbol], :id].flatten!)
|
52
|
+
end
|
53
|
+
|
54
|
+
selfclass.send(:define_method, action[:search]) do |params|
|
55
|
+
searchCall(action[:search],params,[:return, symbol]) if fields?(params, [:search])
|
56
|
+
end
|
58
57
|
|
59
|
-
|
60
|
-
|
61
|
-
|
58
|
+
selfclass.send(:define_method, action[:sync]) do |datetime|
|
59
|
+
getSyncApiCall(action[:sync],datetime,[:return, symbol])
|
60
|
+
end
|
62
61
|
|
62
|
+
selfclass.send(:define_method, action[:get]) do |id|
|
63
|
+
idApicall(action[:get],id,[:return, symbol])
|
64
|
+
end
|
65
|
+
|
66
|
+
selfclass.send(:define_method, action[:delete]) do |id|
|
67
|
+
idApicall(action[:delete],id,[:ok])
|
68
|
+
end
|
63
69
|
end
|
64
70
|
end
|
65
71
|
|
66
|
-
def
|
67
|
-
|
68
|
-
|
72
|
+
def searchCall(method, searchparameter, outputkeys)
|
73
|
+
search = SEARCHDEFAULTS.merge!(searchparameter)
|
74
|
+
output(method,apicall(method,search), outputkeys)
|
69
75
|
end
|
70
76
|
|
71
|
-
def getSyncApiCall(datetime)
|
72
|
-
|
73
|
-
|
74
|
-
apicall(calling_method.to_sym, { :date => formated_date })
|
77
|
+
def getSyncApiCall(method, datetime, outputkeys)
|
78
|
+
formated_date=Date.parse(datetime).strftime("%Y-%m-%d %H:%M:%S")
|
79
|
+
output(method,apicall(method, {:date => formated_date}), outputkeys)
|
75
80
|
end
|
76
81
|
|
77
|
-
def idApicall(id)
|
78
|
-
apicall(
|
82
|
+
def idApicall(method, id, outputkeys)
|
83
|
+
output(method,apicall(method,{:id => id}), outputkeys)
|
79
84
|
end
|
80
85
|
|
81
|
-
def detailsApicall(details)
|
82
|
-
|
86
|
+
def detailsApicall(method, details, outputkeys)
|
87
|
+
output(method,apicall(method,details), outputkeys)
|
83
88
|
end
|
84
|
-
|
85
|
-
# used
|
89
|
+
|
90
|
+
# used for a savon-soap request
|
86
91
|
def apicall(action, parameter)
|
92
|
+
|
87
93
|
response=@client.request :wsdl, action do
|
88
94
|
soap.body = { :param => parameter }.deep_merge_me!(self.opts)
|
89
95
|
end
|
90
96
|
response
|
91
97
|
rescue Savon::Error => error
|
92
|
-
raise ArgumentError, "Memotoo
|
98
|
+
raise ArgumentError, "Memotoo - invalid username/password" if error.message.nil?
|
93
99
|
end
|
94
100
|
|
95
|
-
def output(response,
|
96
|
-
output_key = [(
|
101
|
+
def output(method, response, keys=[])
|
102
|
+
output_key = [(method.to_s.underscore+"_response").to_sym] | keys # e.g. [:addContact, :return, :contact]
|
97
103
|
response.nil? ? nil : response.to_hash.seek(output_key)
|
98
104
|
end
|
99
105
|
|
100
106
|
def go_home(message)
|
101
|
-
raise ArgumentError, "Memotoo
|
107
|
+
raise ArgumentError, "Memotoo - missing fields: " + message.to_s
|
102
108
|
end
|
103
109
|
|
104
110
|
def fields?(thehash, args=[])
|
@@ -208,7 +214,11 @@ class Memotoo
|
|
208
214
|
# id_bookmark_folder_parent:: "363174"
|
209
215
|
# ---------------------
|
210
216
|
|
211
|
-
|
217
|
+
#--
|
218
|
+
#
|
219
|
+
# for the other object make a search and analyze the first result
|
220
|
+
#
|
221
|
+
#++
|
212
222
|
|
213
223
|
# ---------------------
|
214
224
|
# :section: Contact fields
|
data/memotoo.gemspec
CHANGED
@@ -5,11 +5,11 @@
|
|
5
5
|
|
6
6
|
Gem::Specification.new do |s|
|
7
7
|
s.name = %q{memotoo}
|
8
|
-
s.version = "2.0.
|
8
|
+
s.version = "2.0.1"
|
9
9
|
|
10
10
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
11
|
s.authors = ["Karsten Redmer"]
|
12
|
-
s.date = %q{2011-06-
|
12
|
+
s.date = %q{2011-06-16}
|
13
13
|
s.description = %q{Unofficial gem for connecting to memotoo.com with their soap-api and handle your contact needs. Memotoo lets your synchronize all your contacts, events and tasks with yahoo, gmail, facebook, xing, outlook, your mobile-phone and more. You can also get your e-mails in one place.Features of memotoo:
|
14
14
|
New mobile? Transfer all your data to your new device!
|
15
15
|
Synchronise your data with your mobile phone (with SyncML)
|
@@ -36,7 +36,6 @@ Gem::Specification.new do |s|
|
|
36
36
|
"VERSION",
|
37
37
|
"lib/memotoo.rb",
|
38
38
|
"lib/memotoo/core-ext/hash.rb",
|
39
|
-
"lib/memotoo/core-ext/kernel.rb",
|
40
39
|
"lib/memotoo/main.rb",
|
41
40
|
"memotoo.gemspec",
|
42
41
|
"test/helper.rb",
|
@@ -61,6 +60,8 @@ Gem::Specification.new do |s|
|
|
61
60
|
s.add_runtime_dependency(%q<i18n>, [">= 0"])
|
62
61
|
s.add_runtime_dependency(%q<activesupport>, [">= 2.3.5"])
|
63
62
|
s.add_runtime_dependency(%q<savon>, ["~> 0.9.2"])
|
63
|
+
s.add_runtime_dependency(%q<httpi>, ["= 0.9.4"])
|
64
|
+
s.add_runtime_dependency(%q<rake>, ["= 0.8.7"])
|
64
65
|
s.add_development_dependency(%q<rack>, ["~> 1.1.2"])
|
65
66
|
s.add_development_dependency(%q<shoulda>, [">= 0"])
|
66
67
|
s.add_development_dependency(%q<bundler>, ["~> 1.0.0"])
|
@@ -71,6 +72,8 @@ Gem::Specification.new do |s|
|
|
71
72
|
s.add_dependency(%q<i18n>, [">= 0"])
|
72
73
|
s.add_dependency(%q<activesupport>, [">= 2.3.5"])
|
73
74
|
s.add_dependency(%q<savon>, ["~> 0.9.2"])
|
75
|
+
s.add_dependency(%q<httpi>, ["= 0.9.4"])
|
76
|
+
s.add_dependency(%q<rake>, ["= 0.8.7"])
|
74
77
|
s.add_dependency(%q<rack>, ["~> 1.1.2"])
|
75
78
|
s.add_dependency(%q<shoulda>, [">= 0"])
|
76
79
|
s.add_dependency(%q<bundler>, ["~> 1.0.0"])
|
@@ -82,6 +85,8 @@ Gem::Specification.new do |s|
|
|
82
85
|
s.add_dependency(%q<i18n>, [">= 0"])
|
83
86
|
s.add_dependency(%q<activesupport>, [">= 2.3.5"])
|
84
87
|
s.add_dependency(%q<savon>, ["~> 0.9.2"])
|
88
|
+
s.add_dependency(%q<httpi>, ["= 0.9.4"])
|
89
|
+
s.add_dependency(%q<rake>, ["= 0.8.7"])
|
85
90
|
s.add_dependency(%q<rack>, ["~> 1.1.2"])
|
86
91
|
s.add_dependency(%q<shoulda>, [">= 0"])
|
87
92
|
s.add_dependency(%q<bundler>, ["~> 1.0.0"])
|
data/test/test_memotoo.rb
CHANGED
@@ -1,19 +1,19 @@
|
|
1
|
-
require 'helper'
|
1
|
+
require File.expand_path('./test/helper')
|
2
2
|
|
3
3
|
class TestMemotoo < Test::Unit::TestCase
|
4
4
|
|
5
5
|
context "Memotoo-Soap Api basic tests" do
|
6
6
|
|
7
7
|
setup do
|
8
|
-
@connect=Memotoo.new(MEMOTOO_USERNAME,MEMOTOO_PASSWORD)
|
8
|
+
@connect=Memotoo.new(MEMOTOO_USERNAME,MEMOTOO_PASSWORD,false)
|
9
9
|
end
|
10
|
-
|
10
|
+
|
11
11
|
should "have a connect-instance" do
|
12
12
|
assert_equal Memotoo, @connect.class
|
13
13
|
end
|
14
|
-
|
14
|
+
|
15
15
|
should "write a message if username/password is not correct" do
|
16
|
-
|
16
|
+
@connect=Memotoo.new(MEMOTOO_USERNAME,"wrongpasswd")
|
17
17
|
assert_raises ArgumentError do
|
18
18
|
response = @connect.searchContact(TESTSEARCHDEFAULTS)
|
19
19
|
end
|
data/test/test_soapobjects.rb
CHANGED
@@ -1,16 +1,13 @@
|
|
1
|
-
require 'helper'
|
1
|
+
require File.expand_path('./test/helper')
|
2
2
|
|
3
3
|
class TestMemotoo < Test::Unit::TestCase
|
4
4
|
|
5
5
|
# api-problem in: BookmarkFolder, Holiday -> reportet to Thomas Pequet on 12.July 2011
|
6
6
|
|
7
|
-
# uncomment this to test all soapobjects
|
8
7
|
soapobjects = %w{Contact}
|
8
|
+
# uncomment this to test all soapobjects
|
9
9
|
#soapobjects = %w{Contact ContactGroup Bookmark Note CalendarCategory Event Task}
|
10
10
|
|
11
|
-
|
12
|
-
|
13
|
-
|
14
11
|
fixure = { :contact => { :new => {:lastname => "Testcontact123456"},
|
15
12
|
:mod => {:lastname => "Testcontact123456xyz"}},
|
16
13
|
:contact_group => { :new=>{:name => "TestcontactGroup123456"},
|
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: memotoo
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
4
|
+
hash: 13
|
5
5
|
prerelease:
|
6
6
|
segments:
|
7
7
|
- 2
|
8
8
|
- 0
|
9
|
-
-
|
10
|
-
version: 2.0.
|
9
|
+
- 1
|
10
|
+
version: 2.0.1
|
11
11
|
platform: ruby
|
12
12
|
authors:
|
13
13
|
- Karsten Redmer
|
@@ -15,7 +15,7 @@ autorequire:
|
|
15
15
|
bindir: bin
|
16
16
|
cert_chain: []
|
17
17
|
|
18
|
-
date: 2011-06-
|
18
|
+
date: 2011-06-16 00:00:00 +02:00
|
19
19
|
default_executable:
|
20
20
|
dependencies:
|
21
21
|
- !ruby/object:Gem::Dependency
|
@@ -65,8 +65,40 @@ dependencies:
|
|
65
65
|
version_requirements: *id003
|
66
66
|
prerelease: false
|
67
67
|
- !ruby/object:Gem::Dependency
|
68
|
-
type: :
|
68
|
+
type: :runtime
|
69
69
|
requirement: &id004 !ruby/object:Gem::Requirement
|
70
|
+
none: false
|
71
|
+
requirements:
|
72
|
+
- - "="
|
73
|
+
- !ruby/object:Gem::Version
|
74
|
+
hash: 51
|
75
|
+
segments:
|
76
|
+
- 0
|
77
|
+
- 9
|
78
|
+
- 4
|
79
|
+
version: 0.9.4
|
80
|
+
name: httpi
|
81
|
+
version_requirements: *id004
|
82
|
+
prerelease: false
|
83
|
+
- !ruby/object:Gem::Dependency
|
84
|
+
type: :runtime
|
85
|
+
requirement: &id005 !ruby/object:Gem::Requirement
|
86
|
+
none: false
|
87
|
+
requirements:
|
88
|
+
- - "="
|
89
|
+
- !ruby/object:Gem::Version
|
90
|
+
hash: 49
|
91
|
+
segments:
|
92
|
+
- 0
|
93
|
+
- 8
|
94
|
+
- 7
|
95
|
+
version: 0.8.7
|
96
|
+
name: rake
|
97
|
+
version_requirements: *id005
|
98
|
+
prerelease: false
|
99
|
+
- !ruby/object:Gem::Dependency
|
100
|
+
type: :development
|
101
|
+
requirement: &id006 !ruby/object:Gem::Requirement
|
70
102
|
none: false
|
71
103
|
requirements:
|
72
104
|
- - ~>
|
@@ -78,11 +110,11 @@ dependencies:
|
|
78
110
|
- 2
|
79
111
|
version: 1.1.2
|
80
112
|
name: rack
|
81
|
-
version_requirements: *
|
113
|
+
version_requirements: *id006
|
82
114
|
prerelease: false
|
83
115
|
- !ruby/object:Gem::Dependency
|
84
116
|
type: :development
|
85
|
-
requirement: &
|
117
|
+
requirement: &id007 !ruby/object:Gem::Requirement
|
86
118
|
none: false
|
87
119
|
requirements:
|
88
120
|
- - ">="
|
@@ -92,11 +124,11 @@ dependencies:
|
|
92
124
|
- 0
|
93
125
|
version: "0"
|
94
126
|
name: shoulda
|
95
|
-
version_requirements: *
|
127
|
+
version_requirements: *id007
|
96
128
|
prerelease: false
|
97
129
|
- !ruby/object:Gem::Dependency
|
98
130
|
type: :development
|
99
|
-
requirement: &
|
131
|
+
requirement: &id008 !ruby/object:Gem::Requirement
|
100
132
|
none: false
|
101
133
|
requirements:
|
102
134
|
- - ~>
|
@@ -108,11 +140,11 @@ dependencies:
|
|
108
140
|
- 0
|
109
141
|
version: 1.0.0
|
110
142
|
name: bundler
|
111
|
-
version_requirements: *
|
143
|
+
version_requirements: *id008
|
112
144
|
prerelease: false
|
113
145
|
- !ruby/object:Gem::Dependency
|
114
146
|
type: :development
|
115
|
-
requirement: &
|
147
|
+
requirement: &id009 !ruby/object:Gem::Requirement
|
116
148
|
none: false
|
117
149
|
requirements:
|
118
150
|
- - ~>
|
@@ -124,11 +156,11 @@ dependencies:
|
|
124
156
|
- 2
|
125
157
|
version: 1.5.2
|
126
158
|
name: jeweler
|
127
|
-
version_requirements: *
|
159
|
+
version_requirements: *id009
|
128
160
|
prerelease: false
|
129
161
|
- !ruby/object:Gem::Dependency
|
130
162
|
type: :development
|
131
|
-
requirement: &
|
163
|
+
requirement: &id010 !ruby/object:Gem::Requirement
|
132
164
|
none: false
|
133
165
|
requirements:
|
134
166
|
- - ">="
|
@@ -138,11 +170,11 @@ dependencies:
|
|
138
170
|
- 0
|
139
171
|
version: "0"
|
140
172
|
name: rcov
|
141
|
-
version_requirements: *
|
173
|
+
version_requirements: *id010
|
142
174
|
prerelease: false
|
143
175
|
- !ruby/object:Gem::Dependency
|
144
176
|
type: :runtime
|
145
|
-
requirement: &
|
177
|
+
requirement: &id011 !ruby/object:Gem::Requirement
|
146
178
|
none: false
|
147
179
|
requirements:
|
148
180
|
- - ">="
|
@@ -152,7 +184,7 @@ dependencies:
|
|
152
184
|
- 0
|
153
185
|
version: "0"
|
154
186
|
name: savon
|
155
|
-
version_requirements: *
|
187
|
+
version_requirements: *id011
|
156
188
|
prerelease: false
|
157
189
|
description: |-
|
158
190
|
Unofficial gem for connecting to memotoo.com with their soap-api and handle your contact needs. Memotoo lets your synchronize all your contacts, events and tasks with yahoo, gmail, facebook, xing, outlook, your mobile-phone and more. You can also get your e-mails in one place.Features of memotoo:
|
@@ -184,7 +216,6 @@ files:
|
|
184
216
|
- VERSION
|
185
217
|
- lib/memotoo.rb
|
186
218
|
- lib/memotoo/core-ext/hash.rb
|
187
|
-
- lib/memotoo/core-ext/kernel.rb
|
188
219
|
- lib/memotoo/main.rb
|
189
220
|
- memotoo.gemspec
|
190
221
|
- test/helper.rb
|