cinch-notes 1.0.3 → 1.0.4
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 +7 -0
- data/.travis.yml +20 -1
- data/cinch-notes.gemspec +11 -14
- data/lib/cinch/plugins/notes.rb +26 -29
- data/lib/cinch/plugins/notes/note.rb +16 -14
- data/lib/cinch/plugins/notes/version.rb +1 -1
- data/spec/cinch-notes_spec.rb +4 -4
- metadata +29 -40
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
!binary "U0hBMQ==":
|
3
|
+
metadata.gz: 41afe8c895d0a1e24ef26b05783adb5e0f5d2c3b
|
4
|
+
data.tar.gz: a30f7fb0f402055636f1af17645d1577849d3ead
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: e57c4e6812a78bd531e376b86513b4eaca0639bcaadf04e91f45dea4c8dcba085494965a9a23adc40198e4ddba36fee3223f898677ad90d73421abc1b69e85b6
|
7
|
+
data.tar.gz: fa34d5a481036000babb1f99dd7dd494d9b573d6316ccc7daa0feda8cf82ff6eeac4e484c195cb18e9691cff5db987ba1156620185307d3bb92cf2f1c34389f9
|
data/.travis.yml
CHANGED
@@ -1,4 +1,23 @@
|
|
1
1
|
language: ruby
|
2
|
+
env:
|
3
|
+
global:
|
4
|
+
- "JRUBY_OPTS=-Xcext.enabled=true"
|
2
5
|
rvm:
|
3
|
-
- 1.
|
6
|
+
- 2.1.0
|
7
|
+
- 2.0.0
|
4
8
|
- 1.9.3
|
9
|
+
- 1.9.2
|
10
|
+
- 1.8.7
|
11
|
+
- jruby-18mode
|
12
|
+
- jruby-19mode
|
13
|
+
- ruby-head
|
14
|
+
- jruby-head
|
15
|
+
- ree
|
16
|
+
matrix:
|
17
|
+
allow_failures:
|
18
|
+
- rvm: 1.8.7
|
19
|
+
- rvm: ree
|
20
|
+
- rvm: jruby-18mode
|
21
|
+
- rvm: jruby-19mode
|
22
|
+
- rvm: jruby-head
|
23
|
+
fast_finish: true
|
data/cinch-notes.gemspec
CHANGED
@@ -8,22 +8,19 @@ Gem::Specification.new do |spec|
|
|
8
8
|
spec.version = Cinch::Plugins::Notes::VERSION
|
9
9
|
spec.authors = ['Brian Haberer']
|
10
10
|
spec.email = ['bhaberer@gmail.com']
|
11
|
-
spec.description = %q
|
12
|
-
spec.summary = %q
|
11
|
+
spec.description = %q(A cinch plugin to allow leaving other users notes.)
|
12
|
+
spec.summary = %q(Cinch Notes Plugin)
|
13
13
|
spec.homepage = 'https://github.com/bhaberer/cinch-note'
|
14
14
|
spec.license = 'MIT'
|
15
|
-
|
16
15
|
spec.files = `git ls-files`.split($/)
|
17
|
-
spec.executables = spec.files.grep(
|
18
|
-
spec.test_files = spec.files.grep(
|
16
|
+
spec.executables = spec.files.grep(/^bin\//).map { |f| File.basename(f) }
|
17
|
+
spec.test_files = spec.files.grep(/^(test|spec|features)\//)
|
19
18
|
spec.require_paths = ['lib']
|
20
|
-
|
21
|
-
spec.add_development_dependency '
|
22
|
-
spec.add_development_dependency '
|
23
|
-
spec.add_development_dependency '
|
24
|
-
spec.add_development_dependency '
|
25
|
-
spec.
|
26
|
-
|
27
|
-
spec.add_dependency 'cinch', '~> 2.0.12'
|
28
|
-
spec.add_dependency 'cinch-storage', '~> 1.1.0'
|
19
|
+
spec.add_development_dependency 'bundler', '~> 1.3'
|
20
|
+
spec.add_development_dependency 'rake', '~> 10'
|
21
|
+
spec.add_development_dependency 'rspec', '~> 3'
|
22
|
+
spec.add_development_dependency 'coveralls', '~> 0.7'
|
23
|
+
spec.add_development_dependency 'cinch-test', '~> 0.1', '>= 0.1.0'
|
24
|
+
spec.add_dependency 'cinch', '~> 2'
|
25
|
+
spec.add_dependency 'cinch-storage', '~> 1.1'
|
29
26
|
end
|
data/lib/cinch/plugins/notes.rb
CHANGED
@@ -2,40 +2,37 @@
|
|
2
2
|
require 'cinch'
|
3
3
|
require 'cinch/storage'
|
4
4
|
|
5
|
-
module Cinch
|
6
|
-
|
7
|
-
|
8
|
-
|
5
|
+
module Cinch
|
6
|
+
module Plugins
|
7
|
+
# Cinch Plugin to send notes
|
8
|
+
class Notes
|
9
|
+
include Cinch::Plugin
|
9
10
|
|
10
|
-
|
11
|
+
listen_to :channel, method: :send_notes
|
12
|
+
set prefix: ''
|
13
|
+
match(/\Atell (\w+) (.+)/, react_on: :private, method: :make_note)
|
11
14
|
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
def initialize(*args)
|
18
|
-
super
|
19
|
-
@storage = Cinch::Storage.new(config[:filename] || 'yaml/notes.yml')
|
20
|
-
@storage.data ||= {}
|
21
|
-
end
|
15
|
+
def initialize(*args)
|
16
|
+
super
|
17
|
+
@storage = Cinch::Storage.new(config[:filename] || 'yaml/notes.yml')
|
18
|
+
@storage.data ||= {}
|
19
|
+
end
|
22
20
|
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
21
|
+
def make_note(m, user, message)
|
22
|
+
note = Note.new(m.user.nick, user, message)
|
23
|
+
@storage.data[user.downcase] ||= []
|
24
|
+
@storage.data[user.downcase] << note
|
25
|
+
@storage.synced_save(@bot)
|
26
|
+
m.reply 'ok, I will let them know!'
|
27
|
+
end
|
30
28
|
|
31
|
-
|
32
|
-
|
33
|
-
|
29
|
+
def send_notes(m)
|
30
|
+
nick = m.user.nick.downcase
|
31
|
+
return unless @storage.data.key?(nick)
|
34
32
|
@storage.data[nick].each do |note|
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
end
|
33
|
+
next if note.sent
|
34
|
+
m.user.send("#{note.from} asked me to tell you '#{note.message}'")
|
35
|
+
note.mark_sent
|
39
36
|
end
|
40
37
|
@storage.synced_save(@bot)
|
41
38
|
end
|
@@ -1,20 +1,22 @@
|
|
1
1
|
# -*- coding: utf-8 -*-
|
2
|
-
module Cinch
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
2
|
+
module Cinch
|
3
|
+
module Plugins
|
4
|
+
class Notes
|
5
|
+
# Object to store note information
|
6
|
+
class Note
|
7
|
+
attr_accessor :from, :to, :message, :time, :sent
|
7
8
|
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
9
|
+
def initialize(from, to, message)
|
10
|
+
@from = from
|
11
|
+
@to = to
|
12
|
+
@message = message
|
13
|
+
@sent = false
|
14
|
+
@time = Time.now
|
15
|
+
end
|
15
16
|
|
16
|
-
|
17
|
-
|
17
|
+
def mark_sent
|
18
|
+
@sent = true
|
19
|
+
end
|
18
20
|
end
|
19
21
|
end
|
20
22
|
end
|
data/spec/cinch-notes_spec.rb
CHANGED
@@ -9,14 +9,14 @@ describe Cinch::Plugins::Notes do
|
|
9
9
|
|
10
10
|
describe 'handling hangout links' do
|
11
11
|
it 'should accept a message to give to someone later' do
|
12
|
-
get_replies(make_message(@bot, 'tell foo bar'), :private).first
|
13
|
-
|
12
|
+
msg = get_replies(make_message(@bot, 'tell foo bar'), :private).first
|
13
|
+
expect(msg.text).to eq('ok, I will let them know!')
|
14
14
|
end
|
15
15
|
|
16
16
|
it 'should send the message when someone talks later' do
|
17
17
|
get_replies(make_message(@bot, 'tell joe bar'), :private)
|
18
|
-
get_replies(make_message(@bot, 'hi', { nick: 'joe', channel: '#foo' })).first
|
19
|
-
|
18
|
+
msg = get_replies(make_message(@bot, 'hi', { nick: 'joe', channel: '#foo' })).first
|
19
|
+
expect(msg.text).to eq('test asked me to tell you \'bar\'')
|
20
20
|
end
|
21
21
|
end
|
22
22
|
end
|
metadata
CHANGED
@@ -1,20 +1,18 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: cinch-notes
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0.
|
5
|
-
prerelease:
|
4
|
+
version: 1.0.4
|
6
5
|
platform: ruby
|
7
6
|
authors:
|
8
7
|
- Brian Haberer
|
9
8
|
autorequire:
|
10
9
|
bindir: bin
|
11
10
|
cert_chain: []
|
12
|
-
date: 2014-
|
11
|
+
date: 2014-08-01 00:00:00.000000000 Z
|
13
12
|
dependencies:
|
14
13
|
- !ruby/object:Gem::Dependency
|
15
14
|
name: bundler
|
16
15
|
requirement: !ruby/object:Gem::Requirement
|
17
|
-
none: false
|
18
16
|
requirements:
|
19
17
|
- - ~>
|
20
18
|
- !ruby/object:Gem::Version
|
@@ -22,7 +20,6 @@ dependencies:
|
|
22
20
|
type: :development
|
23
21
|
prerelease: false
|
24
22
|
version_requirements: !ruby/object:Gem::Requirement
|
25
|
-
none: false
|
26
23
|
requirements:
|
27
24
|
- - ~>
|
28
25
|
- !ruby/object:Gem::Version
|
@@ -30,99 +27,93 @@ dependencies:
|
|
30
27
|
- !ruby/object:Gem::Dependency
|
31
28
|
name: rake
|
32
29
|
requirement: !ruby/object:Gem::Requirement
|
33
|
-
none: false
|
34
30
|
requirements:
|
35
|
-
- -
|
31
|
+
- - ~>
|
36
32
|
- !ruby/object:Gem::Version
|
37
|
-
version: '
|
33
|
+
version: '10'
|
38
34
|
type: :development
|
39
35
|
prerelease: false
|
40
36
|
version_requirements: !ruby/object:Gem::Requirement
|
41
|
-
none: false
|
42
37
|
requirements:
|
43
|
-
- -
|
38
|
+
- - ~>
|
44
39
|
- !ruby/object:Gem::Version
|
45
|
-
version: '
|
40
|
+
version: '10'
|
46
41
|
- !ruby/object:Gem::Dependency
|
47
42
|
name: rspec
|
48
43
|
requirement: !ruby/object:Gem::Requirement
|
49
|
-
none: false
|
50
44
|
requirements:
|
51
|
-
- -
|
45
|
+
- - ~>
|
52
46
|
- !ruby/object:Gem::Version
|
53
|
-
version: '
|
47
|
+
version: '3'
|
54
48
|
type: :development
|
55
49
|
prerelease: false
|
56
50
|
version_requirements: !ruby/object:Gem::Requirement
|
57
|
-
none: false
|
58
51
|
requirements:
|
59
|
-
- -
|
52
|
+
- - ~>
|
60
53
|
- !ruby/object:Gem::Version
|
61
|
-
version: '
|
54
|
+
version: '3'
|
62
55
|
- !ruby/object:Gem::Dependency
|
63
56
|
name: coveralls
|
64
57
|
requirement: !ruby/object:Gem::Requirement
|
65
|
-
none: false
|
66
58
|
requirements:
|
67
|
-
- -
|
59
|
+
- - ~>
|
68
60
|
- !ruby/object:Gem::Version
|
69
|
-
version: '0'
|
61
|
+
version: '0.7'
|
70
62
|
type: :development
|
71
63
|
prerelease: false
|
72
64
|
version_requirements: !ruby/object:Gem::Requirement
|
73
|
-
none: false
|
74
65
|
requirements:
|
75
|
-
- -
|
66
|
+
- - ~>
|
76
67
|
- !ruby/object:Gem::Version
|
77
|
-
version: '0'
|
68
|
+
version: '0.7'
|
78
69
|
- !ruby/object:Gem::Dependency
|
79
70
|
name: cinch-test
|
80
71
|
requirement: !ruby/object:Gem::Requirement
|
81
|
-
none: false
|
82
72
|
requirements:
|
73
|
+
- - ~>
|
74
|
+
- !ruby/object:Gem::Version
|
75
|
+
version: '0.1'
|
83
76
|
- - ! '>='
|
84
77
|
- !ruby/object:Gem::Version
|
85
|
-
version:
|
78
|
+
version: 0.1.0
|
86
79
|
type: :development
|
87
80
|
prerelease: false
|
88
81
|
version_requirements: !ruby/object:Gem::Requirement
|
89
|
-
none: false
|
90
82
|
requirements:
|
83
|
+
- - ~>
|
84
|
+
- !ruby/object:Gem::Version
|
85
|
+
version: '0.1'
|
91
86
|
- - ! '>='
|
92
87
|
- !ruby/object:Gem::Version
|
93
|
-
version:
|
88
|
+
version: 0.1.0
|
94
89
|
- !ruby/object:Gem::Dependency
|
95
90
|
name: cinch
|
96
91
|
requirement: !ruby/object:Gem::Requirement
|
97
|
-
none: false
|
98
92
|
requirements:
|
99
93
|
- - ~>
|
100
94
|
- !ruby/object:Gem::Version
|
101
|
-
version: 2
|
95
|
+
version: '2'
|
102
96
|
type: :runtime
|
103
97
|
prerelease: false
|
104
98
|
version_requirements: !ruby/object:Gem::Requirement
|
105
|
-
none: false
|
106
99
|
requirements:
|
107
100
|
- - ~>
|
108
101
|
- !ruby/object:Gem::Version
|
109
|
-
version: 2
|
102
|
+
version: '2'
|
110
103
|
- !ruby/object:Gem::Dependency
|
111
104
|
name: cinch-storage
|
112
105
|
requirement: !ruby/object:Gem::Requirement
|
113
|
-
none: false
|
114
106
|
requirements:
|
115
107
|
- - ~>
|
116
108
|
- !ruby/object:Gem::Version
|
117
|
-
version: 1.1
|
109
|
+
version: '1.1'
|
118
110
|
type: :runtime
|
119
111
|
prerelease: false
|
120
112
|
version_requirements: !ruby/object:Gem::Requirement
|
121
|
-
none: false
|
122
113
|
requirements:
|
123
114
|
- - ~>
|
124
115
|
- !ruby/object:Gem::Version
|
125
|
-
version: 1.1
|
116
|
+
version: '1.1'
|
126
117
|
description: A cinch plugin to allow leaving other users notes.
|
127
118
|
email:
|
128
119
|
- bhaberer@gmail.com
|
@@ -146,29 +137,27 @@ files:
|
|
146
137
|
homepage: https://github.com/bhaberer/cinch-note
|
147
138
|
licenses:
|
148
139
|
- MIT
|
140
|
+
metadata: {}
|
149
141
|
post_install_message:
|
150
142
|
rdoc_options: []
|
151
143
|
require_paths:
|
152
144
|
- lib
|
153
145
|
required_ruby_version: !ruby/object:Gem::Requirement
|
154
|
-
none: false
|
155
146
|
requirements:
|
156
147
|
- - ! '>='
|
157
148
|
- !ruby/object:Gem::Version
|
158
149
|
version: '0'
|
159
150
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
160
|
-
none: false
|
161
151
|
requirements:
|
162
152
|
- - ! '>='
|
163
153
|
- !ruby/object:Gem::Version
|
164
154
|
version: '0'
|
165
155
|
requirements: []
|
166
156
|
rubyforge_project:
|
167
|
-
rubygems_version:
|
157
|
+
rubygems_version: 2.2.2
|
168
158
|
signing_key:
|
169
|
-
specification_version:
|
159
|
+
specification_version: 4
|
170
160
|
summary: Cinch Notes Plugin
|
171
161
|
test_files:
|
172
162
|
- spec/cinch-notes_spec.rb
|
173
163
|
- spec/spec_helper.rb
|
174
|
-
has_rdoc:
|