ayadn 0.6.4 → 1.0.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.
Files changed (75) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +20 -0
  3. data/.rspec +2 -0
  4. data/.travis.yml +17 -0
  5. data/Gemfile +14 -0
  6. data/Guardfile +26 -0
  7. data/LICENSE.txt +22 -0
  8. data/MANUAL.md +946 -0
  9. data/README.md +26 -411
  10. data/Rakefile +6 -0
  11. data/ayadn.gemspec +39 -0
  12. data/bin/ayadn +3 -3
  13. data/lib/ayadn.rb +12 -25
  14. data/lib/ayadn/action.rb +1121 -0
  15. data/lib/ayadn/alias.rb +106 -0
  16. data/lib/ayadn/api.rb +312 -301
  17. data/lib/ayadn/app.rb +429 -365
  18. data/lib/ayadn/authorize.rb +127 -28
  19. data/lib/ayadn/blacklist.rb +116 -0
  20. data/lib/ayadn/cnx.rb +105 -0
  21. data/lib/ayadn/databases.rb +110 -0
  22. data/lib/ayadn/descriptions.rb +1043 -0
  23. data/lib/ayadn/endpoints.rb +220 -153
  24. data/lib/ayadn/errors.rb +37 -0
  25. data/lib/ayadn/extend.rb +4 -10
  26. data/lib/ayadn/fileops.rb +48 -0
  27. data/lib/ayadn/logs.rb +32 -0
  28. data/lib/ayadn/pinboard.rb +46 -35
  29. data/lib/ayadn/post.rb +229 -212
  30. data/lib/ayadn/scroll.rb +251 -0
  31. data/lib/ayadn/set.rb +377 -0
  32. data/lib/ayadn/settings.rb +195 -0
  33. data/lib/ayadn/status.rb +226 -165
  34. data/lib/ayadn/switch.rb +72 -0
  35. data/lib/ayadn/version.rb +4 -0
  36. data/lib/ayadn/view.rb +506 -269
  37. data/lib/ayadn/workers.rb +362 -0
  38. data/spec/helpers.rb +19 -0
  39. data/spec/mock/@ericd.json +160 -0
  40. data/spec/mock/@m.json +45 -0
  41. data/spec/mock/checkins.json +1856 -0
  42. data/spec/mock/fwr_@ayadn.json +1077 -0
  43. data/spec/mock/posted.json +1 -0
  44. data/spec/mock/stream.json +1 -0
  45. data/spec/spec_helper.rb +14 -0
  46. data/spec/unit/api_spec.rb +61 -0
  47. data/spec/unit/databases_spec.rb +5 -0
  48. data/spec/unit/descriptions_spec.rb +9 -0
  49. data/spec/unit/endpoints_spec.rb +35 -0
  50. data/spec/unit/post_spec.rb +136 -0
  51. data/spec/unit/status_spec.rb +9 -0
  52. data/spec/unit/view_spec.rb +119 -0
  53. data/spec/unit/workers_spec.rb +147 -0
  54. metadata +216 -40
  55. data/CHANGELOG.md +0 -250
  56. data/CONTRIBUTORS.md +0 -5
  57. data/LICENSE.md +0 -14
  58. data/lib/ayadn/adn_files.rb +0 -84
  59. data/lib/ayadn/client-http.rb +0 -226
  60. data/lib/ayadn/colors.rb +0 -62
  61. data/lib/ayadn/config.yml +0 -35
  62. data/lib/ayadn/debug.rb +0 -36
  63. data/lib/ayadn/files.rb +0 -184
  64. data/lib/ayadn/get-api.rb +0 -43
  65. data/lib/ayadn/help.rb +0 -152
  66. data/lib/ayadn/list.rb +0 -89
  67. data/lib/ayadn/main.rb +0 -542
  68. data/lib/ayadn/requires.rb +0 -12
  69. data/lib/ayadn/skip.rb +0 -27
  70. data/lib/ayadn/tools.rb +0 -208
  71. data/lib/ayadn/user-stream.rb +0 -91
  72. data/lib/ayadn/view-channels.rb +0 -120
  73. data/lib/ayadn/view-interactions.rb +0 -57
  74. data/lib/ayadn/view-object.rb +0 -195
  75. data/lib/experiments.rb +0 -109
metadata CHANGED
@@ -1,89 +1,249 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ayadn
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.6.4
4
+ version: 1.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Eric Dejonckheere
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-02-20 00:00:00.000000000 Z
11
+ date: 2014-04-03 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
- name: json
14
+ name: thor
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - "~>"
17
+ - - ">="
18
18
  - !ruby/object:Gem::Version
19
- version: '1.8'
19
+ version: '0.18'
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
- - - "~>"
24
+ - - ">="
25
25
  - !ruby/object:Gem::Version
26
- version: '1.8'
26
+ version: '0.18'
27
+ - !ruby/object:Gem::Dependency
28
+ name: rest-client
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: '1.6'
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - ">="
39
+ - !ruby/object:Gem::Version
40
+ version: '1.6'
41
+ - !ruby/object:Gem::Dependency
42
+ name: rainbow
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - ">="
46
+ - !ruby/object:Gem::Version
47
+ version: '2.0'
48
+ type: :runtime
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - ">="
53
+ - !ruby/object:Gem::Version
54
+ version: '2.0'
55
+ - !ruby/object:Gem::Dependency
56
+ name: terminal-table
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - ">="
60
+ - !ruby/object:Gem::Version
61
+ version: '1.4'
62
+ type: :runtime
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - ">="
67
+ - !ruby/object:Gem::Version
68
+ version: '1.4'
69
+ - !ruby/object:Gem::Dependency
70
+ name: daybreak
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - ">="
74
+ - !ruby/object:Gem::Version
75
+ version: '0.3'
76
+ type: :runtime
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - ">="
81
+ - !ruby/object:Gem::Version
82
+ version: '0.3'
27
83
  - !ruby/object:Gem::Dependency
28
84
  name: pinboard
29
85
  requirement: !ruby/object:Gem::Requirement
30
86
  requirements:
31
- - - "~>"
87
+ - - ">="
32
88
  - !ruby/object:Gem::Version
33
- version: '0.1'
89
+ version: '0'
34
90
  type: :runtime
35
91
  prerelease: false
36
92
  version_requirements: !ruby/object:Gem::Requirement
37
93
  requirements:
38
- - - "~>"
94
+ - - ">="
95
+ - !ruby/object:Gem::Version
96
+ version: '0'
97
+ - !ruby/object:Gem::Dependency
98
+ name: bundler
99
+ requirement: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - ">="
102
+ - !ruby/object:Gem::Version
103
+ version: '1.5'
104
+ type: :development
105
+ prerelease: false
106
+ version_requirements: !ruby/object:Gem::Requirement
107
+ requirements:
108
+ - - ">="
109
+ - !ruby/object:Gem::Version
110
+ version: '1.5'
111
+ - !ruby/object:Gem::Dependency
112
+ name: rake
113
+ requirement: !ruby/object:Gem::Requirement
114
+ requirements:
115
+ - - ">="
116
+ - !ruby/object:Gem::Version
117
+ version: '10.1'
118
+ type: :development
119
+ prerelease: false
120
+ version_requirements: !ruby/object:Gem::Requirement
121
+ requirements:
122
+ - - ">="
123
+ - !ruby/object:Gem::Version
124
+ version: '10.1'
125
+ - !ruby/object:Gem::Dependency
126
+ name: rspec
127
+ requirement: !ruby/object:Gem::Requirement
128
+ requirements:
129
+ - - ">="
130
+ - !ruby/object:Gem::Version
131
+ version: '2.14'
132
+ type: :development
133
+ prerelease: false
134
+ version_requirements: !ruby/object:Gem::Requirement
135
+ requirements:
136
+ - - ">="
137
+ - !ruby/object:Gem::Version
138
+ version: '2.14'
139
+ - !ruby/object:Gem::Dependency
140
+ name: rb-fsevent
141
+ requirement: !ruby/object:Gem::Requirement
142
+ requirements:
143
+ - - ">="
144
+ - !ruby/object:Gem::Version
145
+ version: '0.9'
146
+ type: :development
147
+ prerelease: false
148
+ version_requirements: !ruby/object:Gem::Requirement
149
+ requirements:
150
+ - - ">="
151
+ - !ruby/object:Gem::Version
152
+ version: '0.9'
153
+ - !ruby/object:Gem::Dependency
154
+ name: guard-rspec
155
+ requirement: !ruby/object:Gem::Requirement
156
+ requirements:
157
+ - - ">="
158
+ - !ruby/object:Gem::Version
159
+ version: '4.2'
160
+ type: :development
161
+ prerelease: false
162
+ version_requirements: !ruby/object:Gem::Requirement
163
+ requirements:
164
+ - - ">="
165
+ - !ruby/object:Gem::Version
166
+ version: '4.2'
167
+ - !ruby/object:Gem::Dependency
168
+ name: fakefs
169
+ requirement: !ruby/object:Gem::Requirement
170
+ requirements:
171
+ - - ">="
172
+ - !ruby/object:Gem::Version
173
+ version: '0.5'
174
+ type: :development
175
+ prerelease: false
176
+ version_requirements: !ruby/object:Gem::Requirement
177
+ requirements:
178
+ - - ">="
39
179
  - !ruby/object:Gem::Version
40
- version: '0.1'
41
- description: |
42
- AyaDN features all kinds of tools to access and manage your App.net account. It's an ADN client (posts, streams, PM, channels, files, etc) and a toolbelt at the same time: it can save post links to Pinboard, post your currently-playing iTunes song, backup data associated with your ADN account such as followings, followers, muted users, and many other features.
180
+ version: '0.5'
181
+ description: 'App.net command-line client: toolbox to access and manage your ADN data,
182
+ show your streams, post, manage conversations, star/follow/repost... and many, many
183
+ more.'
43
184
  email: eric@aya.io
44
185
  executables:
45
186
  - ayadn
46
187
  extensions: []
47
188
  extra_rdoc_files: []
48
189
  files:
49
- - CHANGELOG.md
50
- - CONTRIBUTORS.md
51
- - LICENSE.md
190
+ - ".gitignore"
191
+ - ".rspec"
192
+ - ".travis.yml"
193
+ - Gemfile
194
+ - Guardfile
195
+ - LICENSE.txt
196
+ - MANUAL.md
52
197
  - README.md
198
+ - Rakefile
199
+ - ayadn.gemspec
53
200
  - bin/ayadn
54
201
  - lib/ayadn.rb
55
- - lib/ayadn/adn_files.rb
202
+ - lib/ayadn/action.rb
203
+ - lib/ayadn/alias.rb
56
204
  - lib/ayadn/api.rb
57
205
  - lib/ayadn/app.rb
58
206
  - lib/ayadn/authorize.rb
59
- - lib/ayadn/client-http.rb
60
- - lib/ayadn/colors.rb
61
- - lib/ayadn/config.yml
62
- - lib/ayadn/debug.rb
207
+ - lib/ayadn/blacklist.rb
208
+ - lib/ayadn/cnx.rb
209
+ - lib/ayadn/databases.rb
210
+ - lib/ayadn/descriptions.rb
63
211
  - lib/ayadn/endpoints.rb
212
+ - lib/ayadn/errors.rb
64
213
  - lib/ayadn/extend.rb
65
- - lib/ayadn/files.rb
66
- - lib/ayadn/get-api.rb
67
- - lib/ayadn/help.rb
68
- - lib/ayadn/list.rb
69
- - lib/ayadn/main.rb
214
+ - lib/ayadn/fileops.rb
215
+ - lib/ayadn/logs.rb
70
216
  - lib/ayadn/pinboard.rb
71
217
  - lib/ayadn/post.rb
72
- - lib/ayadn/requires.rb
73
- - lib/ayadn/skip.rb
218
+ - lib/ayadn/scroll.rb
219
+ - lib/ayadn/set.rb
220
+ - lib/ayadn/settings.rb
74
221
  - lib/ayadn/status.rb
75
- - lib/ayadn/tools.rb
76
- - lib/ayadn/user-stream.rb
77
- - lib/ayadn/view-channels.rb
78
- - lib/ayadn/view-interactions.rb
79
- - lib/ayadn/view-object.rb
222
+ - lib/ayadn/switch.rb
223
+ - lib/ayadn/version.rb
80
224
  - lib/ayadn/view.rb
81
- - lib/experiments.rb
82
- homepage: http://www.ayadn-app.net/
225
+ - lib/ayadn/workers.rb
226
+ - spec/helpers.rb
227
+ - spec/mock/@ericd.json
228
+ - spec/mock/@m.json
229
+ - spec/mock/checkins.json
230
+ - spec/mock/fwr_@ayadn.json
231
+ - spec/mock/posted.json
232
+ - spec/mock/stream.json
233
+ - spec/spec_helper.rb
234
+ - spec/unit/api_spec.rb
235
+ - spec/unit/databases_spec.rb
236
+ - spec/unit/descriptions_spec.rb
237
+ - spec/unit/endpoints_spec.rb
238
+ - spec/unit/post_spec.rb
239
+ - spec/unit/status_spec.rb
240
+ - spec/unit/view_spec.rb
241
+ - spec/unit/workers_spec.rb
242
+ homepage: http://ayadn-app.net
83
243
  licenses:
84
- - ISC
244
+ - MIT
85
245
  metadata: {}
86
- post_install_message:
246
+ post_install_message: Thank you for installing Ayadn!
87
247
  rdoc_options: []
88
248
  require_paths:
89
249
  - lib
@@ -99,8 +259,24 @@ required_rubygems_version: !ruby/object:Gem::Requirement
99
259
  version: '0'
100
260
  requirements: []
101
261
  rubyforge_project:
102
- rubygems_version: 2.2.1
262
+ rubygems_version: 2.2.2
103
263
  signing_key:
104
264
  specification_version: 4
105
- summary: App.net command-line client
106
- test_files: []
265
+ summary: App.net command-line client.
266
+ test_files:
267
+ - spec/helpers.rb
268
+ - spec/mock/@ericd.json
269
+ - spec/mock/@m.json
270
+ - spec/mock/checkins.json
271
+ - spec/mock/fwr_@ayadn.json
272
+ - spec/mock/posted.json
273
+ - spec/mock/stream.json
274
+ - spec/spec_helper.rb
275
+ - spec/unit/api_spec.rb
276
+ - spec/unit/databases_spec.rb
277
+ - spec/unit/descriptions_spec.rb
278
+ - spec/unit/endpoints_spec.rb
279
+ - spec/unit/post_spec.rb
280
+ - spec/unit/status_spec.rb
281
+ - spec/unit/view_spec.rb
282
+ - spec/unit/workers_spec.rb
data/CHANGELOG.md DELETED
@@ -1,250 +0,0 @@
1
- AYADN
2
- =====
3
-
4
- ## 0.6.4
5
- - fixed 'random'
6
- - fixed a few edge case bugs
7
- - reorganized the gem files
8
- - updated explanations in Readme
9
- - show client name is now true by default
10
- - show reply symbols is now true by default
11
- - show repost symbols is now true by default
12
-
13
- ## 0.6.3
14
- - better 'help screen'
15
- - better platform detection in 'nowplaying'
16
- - fixed 'channels' folder
17
- - fixed 'autostart browser' (only in OSX)
18
- - fixed 'alias-channel' when arg is nil
19
- - fixed 'save to pinboard' when saving without tag
20
-
21
- ## 2014-02-15 v0.6.2
22
- - fixed config
23
-
24
- ## 2014-02-14 v0.6.0
25
- - ayadn is a Gem
26
- - config + multi-account is broken, next version will fix it
27
-
28
- ## 2014-01-29 v0.5.8b
29
- - block/unblock a user
30
- - many bugfixes
31
-
32
- ## 2014-01-18 v0.5.8a
33
- - bug fix (empty name in checkins)
34
- - feature: #nowplaying (iTunes + OS X only)
35
-
36
- ## 2014-01-09 v0.5.7a
37
- - quote a post (different from repost)
38
-
39
- ## 2014-01-08 v0.5.6c
40
- - show reposts count (option, true)
41
- - bugfixes
42
-
43
- ## 2014-01-05 v0.5.6b
44
- - fixed a bug that prevented AyaDN to run on Ruby 2.0
45
-
46
- ## 2014-01-05 v0.5.6a
47
- - channels aliases
48
- - does @xxx follow @yyy
49
-
50
- ## 2014-01-04 v0.5.5
51
- - delete messages
52
- - users database
53
-
54
- ## 2013-12-30 v0.5.4
55
- - custom posts count by stream
56
-
57
- ## 2013-12-29 v0.5.3
58
- - better mentions management in post reply
59
- - detect oembed photo links
60
-
61
- ## 2013-12-28 v0.5.2
62
- - auto save sent messages/posts (options, false by default)
63
- - better channels detection
64
- - allow special characters in Search
65
- - bugfixes in layout, scroll and many other places
66
- - list current options
67
-
68
- ## 2013-12-22 v0.5.1c
69
- - AyaDN follows the ADN config protocol (automatic post and message length)
70
- - faster + lower memory usage
71
- - list of commands
72
- - bugfix in mute/unmute
73
-
74
- ## 2013-12-21 v0.5.1b
75
- - layout bug fixes
76
- - list all channels and show types + names
77
- - send message to any channel
78
- - backup list of channels
79
-
80
- ## 2013-12-20 v0.5.1a
81
- - lots of bug squashing
82
- - faster, faster, pussycat
83
- - layout is more consistent
84
- - new: at the end of the headline,
85
- - put the name of the post's ADN client (option, false by default)
86
- - put "<" if post is a reply, ">" if post has replies, "< >" if post is both (option, true by default)
87
- - semantic versioning
88
- - changed the way the API endpoints are managed
89
- - connection and loading info displayed while calling the API
90
-
91
-
92
- ## 2013-12-19 v0.40
93
- - Skip posts containing specific @username!
94
-
95
- ## 2013-12-15 v0.38
96
- - Skip posts containing specific #hashtag!
97
- - better colors and layout
98
- - better username detect
99
- - bugfixes
100
- - introducing AyaDN to some multithreading :)
101
-
102
- ## 2013-12-14 v0.37
103
- - many bugfixes
104
- - internal code improvements
105
-
106
- ## 2013-12-12 v0.36
107
- - No more Rest-Client, all HTTP by hand
108
-
109
- ## 2013-12-10 v0.35
110
- - Save a post to Pinboard!
111
-
112
- ## 2013-12-08 v0.34b
113
- - Upload a file to your ADN account! (no Windows support)
114
- - Delete a file from your ADN account!
115
- - Change file attribute: private/public!
116
-
117
- ## 2013-12-07 v0.34a
118
- - List your ADN files!
119
- - Download files from your ADN account!
120
- - authorization bugfix
121
- - explore streams bugfix
122
- - various bugfixes and improvements
123
-
124
- ## 2013-12-02 v0.33
125
- - Skip specific clients!
126
- - improvement in the colorization of posts
127
-
128
- ## 2013-11-30 v0.32
129
- - Refactoring
130
- - Local permanent config!
131
- - Auto redirect to original post when replying, (un)reposting and (un)starring!
132
-
133
- ## 2013-11-29 v0.31
134
- - Interactions!
135
-
136
- ## 2013-11-28 v0.30
137
- - Authorize with your App.net account in AyaDN! (no more `token.rb`)
138
-
139
- ## 2013-11-26 v0.26
140
- - Private messages!
141
-
142
- ## 2013-11-25 v0.25
143
- - config bugfix
144
- - multiple accounts
145
-
146
- ## 2013-11-24 v0.24
147
- - Config!
148
- - number of elements in each stream
149
- - timeline order normal/inverse
150
- - directed posts
151
- - Scrolling streams!
152
- - show a few posts from the stream after posting
153
-
154
- ## 2013-11-23 v0.23
155
- - Markdown links
156
- - AyaDN displays only the new posts in the stream since your last visit!
157
- - new token procedure
158
-
159
- ## 2013-11-21 v0.22
160
- - search for word(s)
161
-
162
- ## 2013-11-19 v0.21
163
- - bugfixes
164
- - backup/display followings/followers/muted lists
165
- - mute/unmute a user
166
-
167
- ## 2013-11-17 v0.20
168
- - major internal refactoring
169
-
170
- ## 2013-11-12 v0.15
171
- - see who starred this post!
172
- - see who reposted this post!
173
- - follow/unfollow a user!
174
- - delete a post!
175
- - get original post from a repost!
176
-
177
- ## 2013-11-11 v0.14
178
- - auto-fill with the right mentions when replying!
179
- - refactoring
180
- - star/unstar a post!
181
- - Explore Streams!
182
-
183
- ## 2013-11-11 v0.13
184
- - better layout
185
-
186
- ## 2013-11-10 v0.12
187
- - Reply to!
188
- - better help screen
189
- - `details` is gone, merged with `infos`
190
-
191
- ## 2013-11-10 v0.11
192
- - somewhat compatible Windows
193
-
194
- ## 2013-11-09 v0.10
195
- - methods refactoring
196
- - better error handling
197
- - bugfixes
198
- - optimizations
199
- - Conversations!
200
-
201
- ## 2013-11-09 v0.09
202
- - Post details!
203
- - shortcuts
204
- - bugfixes
205
- - better help + readme
206
-
207
- ## 2013-11-08 v0.08
208
- - Write you own posts!
209
-
210
- ## 2013-11-08 v0.07
211
- - Each lib in its own file
212
- - token is declared in a separate file
213
- - Global stream!
214
- - I botched the GitHub repo, so I had to start again from zero: no commit history before today
215
-
216
- ## 2013-11-08 v0.06
217
- - Changed the logic for ARGV
218
- - Inverted syntax for better consistence
219
- - Hashtag search!
220
-
221
- ## 2013-11-07 v0.05
222
- - User starred posts!
223
- - Bug fixes
224
-
225
- ## 2013-11-06 v0.04b
226
- - User mentions!
227
-
228
- ## 2013-11-06 v0.04a
229
- - Refactored libs
230
- - Token is declared in main app
231
- - Fixed 'deleted posts' bug
232
- - Add Gemfile
233
- - Better platform detection
234
-
235
- ## 2013-11-05 v0.03
236
- - Platform detection
237
- - Colorization is Windows-compatible
238
-
239
- ## 2013-11-04 v0.02b
240
- - User infos!
241
- - User posts!
242
-
243
- ## 2013-11-04 v0.02a
244
- - Unified stream (+ directed posts)!
245
- - colorization
246
- - ARGS
247
-
248
- ## 2013-11-03 v0.01
249
- - Basic structure for an App.net read-only commande-line client
250
-