automatic 12.6.0 → 12.9.1

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 (56) hide show
  1. data/VERSION +1 -1
  2. data/automatic.gemspec +10 -22
  3. data/bin/automatic-config +4 -4
  4. data/doc/ChangeLog +30 -1
  5. data/doc/PLUGINS +46 -178
  6. data/doc/PLUGINS.ja +46 -177
  7. data/doc/README +2 -10
  8. data/doc/README.ja +2 -9
  9. data/lib/automatic.rb +2 -3
  10. data/plugins/custom_feed/svn_log.rb +0 -1
  11. data/plugins/filter/absolute_uri.rb +39 -0
  12. data/plugins/filter/image.rb +46 -0
  13. data/plugins/filter/reverse.rb +0 -1
  14. data/plugins/store/database.rb +8 -23
  15. data/plugins/store/full_text.rb +4 -4
  16. data/plugins/store/permalink.rb +12 -9
  17. data/plugins/store/target_link.rb +3 -2
  18. data/plugins/subscription/link.rb +55 -0
  19. data/plugins/subscription/twitter.rb +57 -0
  20. data/script/build +1 -1
  21. data/spec/lib/automatic_spec.rb +3 -2
  22. data/spec/plugins/custom_feed/svn_log_spec.rb +1 -1
  23. data/spec/plugins/filter/absolute_uri_spec.rb +61 -0
  24. data/spec/plugins/filter/image_source_spec.rb +1 -1
  25. data/spec/plugins/filter/image_spec.rb +65 -0
  26. data/spec/plugins/publish/google_calendar_spec.rb +1 -1
  27. data/spec/plugins/store/full_text_spec.rb +0 -1
  28. data/spec/plugins/store/permalink_spec.rb +52 -3
  29. data/spec/plugins/store/target_link_spec.rb +1 -2
  30. data/spec/plugins/subscription/feed_spec.rb +0 -1
  31. data/spec/plugins/subscription/{uri_spec.rb → link_spec.rb} +9 -10
  32. data/spec/plugins/subscription/twitter_spec.rb +42 -0
  33. data/spec/spec_helper.rb +12 -26
  34. data/spec/user_dir/plugins/store/mock.rb +1 -1
  35. data/test/integration/test_get_image.yml +4 -6
  36. data/test/integration/test_image2local.yml +1 -1
  37. metadata +10 -22
  38. data/config/html2console.yml +0 -16
  39. data/plugins/extract/link.rb +0 -32
  40. data/plugins/filter/image_link.rb +0 -37
  41. data/plugins/publish/dump.rb +0 -24
  42. data/plugins/store/link.rb +0 -47
  43. data/plugins/store/target.rb +0 -41
  44. data/plugins/subscription/uri.rb +0 -31
  45. data/spec/fixtures/extractLink.html +0 -14
  46. data/spec/fixtures/filterImageLink.html +0 -34
  47. data/spec/fixtures/publishDump.html +0 -14
  48. data/spec/fixtures/storeLink.html +0 -34
  49. data/spec/fixtures/storeLink2.html +0 -36
  50. data/spec/fixtures/storeTarget.html +0 -11
  51. data/spec/fixtures/storeTarget2.html +0 -11
  52. data/spec/plugins/extract/link_spec.rb +0 -38
  53. data/spec/plugins/filter/image_link_spec.rb +0 -51
  54. data/spec/plugins/publish/dump_spec.rb +0 -32
  55. data/spec/plugins/store/link_spec.rb +0 -47
  56. data/spec/plugins/store/target_spec.rb +0 -41
data/VERSION CHANGED
@@ -1 +1 @@
1
- 12.6.0
1
+ 12.9.1
data/automatic.gemspec CHANGED
@@ -5,11 +5,11 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = "automatic"
8
- s.version = "12.6.0"
8
+ s.version = "12.9.1"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["id774"]
12
- s.date = "2012-06-17"
12
+ s.date = "2012-09-18"
13
13
  s.description = "Ruby General Automation Framework"
14
14
  s.email = "idnanashi@gmail.com"
15
15
  s.executables = ["automatic", "automatic-config"]
@@ -25,7 +25,6 @@ Gem::Specification.new do |s|
25
25
  "bin/automatic",
26
26
  "bin/automatic-config",
27
27
  "config/feed2console.yml",
28
- "config/html2console.yml",
29
28
  "db/.gitkeep",
30
29
  "doc/AUTHORS",
31
30
  "doc/COPYING",
@@ -42,61 +41,50 @@ Gem::Specification.new do |s|
42
41
  "lib/automatic/pipeline.rb",
43
42
  "lib/automatic/recipe.rb",
44
43
  "plugins/custom_feed/svn_log.rb",
45
- "plugins/extract/link.rb",
44
+ "plugins/filter/absolute_uri.rb",
46
45
  "plugins/filter/ignore.rb",
47
- "plugins/filter/image_link.rb",
46
+ "plugins/filter/image.rb",
48
47
  "plugins/filter/image_source.rb",
49
48
  "plugins/filter/reverse.rb",
50
49
  "plugins/filter/tumblr_resize.rb",
51
50
  "plugins/notify/ikachan.rb",
52
51
  "plugins/publish/console.rb",
53
- "plugins/publish/dump.rb",
54
52
  "plugins/publish/google_calendar.rb",
55
53
  "plugins/publish/hatena_bookmark.rb",
56
54
  "plugins/publish/mail.rb",
57
55
  "plugins/publish/smtp.rb",
58
56
  "plugins/store/database.rb",
59
57
  "plugins/store/full_text.rb",
60
- "plugins/store/link.rb",
61
58
  "plugins/store/permalink.rb",
62
- "plugins/store/target.rb",
63
59
  "plugins/store/target_link.rb",
64
60
  "plugins/subscription/feed.rb",
65
- "plugins/subscription/uri.rb",
61
+ "plugins/subscription/link.rb",
62
+ "plugins/subscription/twitter.rb",
66
63
  "script/bootstrap",
67
64
  "script/build",
68
- "spec/fixtures/extractLink.html",
69
- "spec/fixtures/filterImageLink.html",
70
- "spec/fixtures/publishDump.html",
71
65
  "spec/fixtures/sampleRecipe.yml",
72
- "spec/fixtures/storeLink.html",
73
- "spec/fixtures/storeLink2.html",
74
- "spec/fixtures/storeTarget.html",
75
- "spec/fixtures/storeTarget2.html",
76
66
  "spec/lib/automatic/pipeline_spec.rb",
77
67
  "spec/lib/automatic/recipe_spec.rb",
78
68
  "spec/lib/automatic_spec.rb",
79
69
  "spec/plugins/custom_feed/svn_log_spec.rb",
80
- "spec/plugins/extract/link_spec.rb",
70
+ "spec/plugins/filter/absolute_uri_spec.rb",
81
71
  "spec/plugins/filter/ignore_spec.rb",
82
- "spec/plugins/filter/image_link_spec.rb",
83
72
  "spec/plugins/filter/image_source_spec.rb",
73
+ "spec/plugins/filter/image_spec.rb",
84
74
  "spec/plugins/filter/reverse_spec.rb",
85
75
  "spec/plugins/filter/tumblr_resize_spec.rb",
86
76
  "spec/plugins/notify/ikachan_spec.rb",
87
77
  "spec/plugins/publish/console_spec.rb",
88
- "spec/plugins/publish/dump_spec.rb",
89
78
  "spec/plugins/publish/google_calendar_spec.rb",
90
79
  "spec/plugins/publish/hatena_bookmark_spec.rb",
91
80
  "spec/plugins/publish/mail_spec.rb",
92
81
  "spec/plugins/publish/smtp_spec.rb",
93
82
  "spec/plugins/store/full_text_spec.rb",
94
- "spec/plugins/store/link_spec.rb",
95
83
  "spec/plugins/store/permalink_spec.rb",
96
84
  "spec/plugins/store/target_link_spec.rb",
97
- "spec/plugins/store/target_spec.rb",
98
85
  "spec/plugins/subscription/feed_spec.rb",
99
- "spec/plugins/subscription/uri_spec.rb",
86
+ "spec/plugins/subscription/link_spec.rb",
87
+ "spec/plugins/subscription/twitter_spec.rb",
100
88
  "spec/spec_helper.rb",
101
89
  "spec/user_dir/plugins/store/mock.rb",
102
90
  "test/fixtures/sampleOPML.xml",
data/bin/automatic-config CHANGED
@@ -33,25 +33,25 @@ subparsers = {
33
33
  dir = (File.expand_path('~/.automatic/plugins/' + path))
34
34
  unless File.exist?(dir)
35
35
  FileUtils.mkdir_p(dir)
36
- puts "Create Directory #{dir}"
36
+ puts "Creating #{dir}"
37
37
  end
38
38
  }
39
39
  dir = (File.expand_path('~/.automatic/config'))
40
40
  unless File.exist?(dir)
41
41
  FileUtils.mkdir_p(dir)
42
42
  FileUtils.cp_r(root_dir + '/config', dir + '/example')
43
- puts "Create Directory #{dir}"
43
+ puts "Creating #{dir}"
44
44
  end
45
45
  dir = (File.expand_path('~/.automatic/db'))
46
46
  unless File.exist?(dir)
47
47
  FileUtils.mkdir_p(dir)
48
- puts "Create Directory #{dir}"
48
+ puts "Creating #{dir}"
49
49
  end
50
50
  },
51
51
  'unscaffold' => lambda { |argv|
52
52
  dir = (File.expand_path('~/.automatic'))
53
53
  if File.directory?(dir)
54
- puts "Remove Directory #{dir}"
54
+ puts "Removing #{dir}"
55
55
  FileUtils.rm_r(dir)
56
56
  end
57
57
  },
data/doc/ChangeLog CHANGED
@@ -1,10 +1,39 @@
1
+ === 12.9.1 / 2012-09-18
2
+
3
+ * Bug fix
4
+
5
+ * It should be considered the case of the feed link including nil
6
+
7
+
8
+ === 12.9.0 / 2012-09-18
9
+
10
+ * The format of the pipeline were unified to "feed object" (array of feeds).
11
+
12
+ * Some plug-ins have lost backward compatibility.
13
+
14
+ * Added new plug-ins.
15
+
16
+ * Subscription::Link
17
+ * Subscription::Twitter
18
+ * Filter::Image
19
+ * Filter::AbsoluteURI
20
+
21
+ * Removed obsolete plug-ins.
22
+
23
+ * Subscription::URI
24
+ * Extract::Link
25
+ * Filter::ImageLink
26
+ * Store::Link
27
+ * Store::Target
28
+
29
+
1
30
  === 12.6.0 / 2012-06-18
2
31
 
3
32
  * Added plug-ins.
4
33
 
5
34
  * Subscription::URI
6
35
  * Extract::Link
7
- * Filter::Image
36
+ * Filter::ImageLink
8
37
  * Store::Link
9
38
  * Store::Target
10
39
 
data/doc/PLUGINS CHANGED
@@ -7,12 +7,6 @@ SubscriptionFeed
7
7
  [Path]
8
8
  /plugins/subscription/feed.rb
9
9
 
10
- [Input]
11
- None
12
-
13
- [Output]
14
- Feed
15
-
16
10
  [Abstract]
17
11
  Subscribe to feed.
18
12
 
@@ -24,17 +18,43 @@ SubscriptionFeed
24
18
  - FEED ...
25
19
 
26
20
 
21
+ SubscriptionLink
22
+ ----------------
23
+ [Path]
24
+ /plugins/subscription/link.rb
25
+
26
+ [Abstract]
27
+ Subscribe urls and extract there links.
28
+
29
+ [Syntax]
30
+ - module: SubscriptionLink
31
+ config:
32
+ urls:
33
+ - URL
34
+ - URL ...
35
+
36
+
37
+ SubscriptionTwitter
38
+ -------------------
39
+ [Path]
40
+ /plugins/subscription/twitter.rb
41
+
42
+ [Abstract]
43
+ Subscribe twitter and extract there statuses and the links.
44
+
45
+ [Syntax]
46
+ - module: SubscriptionTwittter
47
+ config:
48
+ urls:
49
+ - URL
50
+ - URL ...
51
+
52
+
27
53
  FilterReverse
28
54
  -------------
29
55
  [Path]
30
56
  /plugins/filter/reverse.rb
31
57
 
32
- [Input]
33
- Feed
34
-
35
- [Output]
36
- Feed
37
-
38
58
  [Abstract]
39
59
  Sort feed by date asc.
40
60
 
@@ -47,12 +67,6 @@ FilterIgnore
47
67
  [Path]
48
68
  /plugins/filter/ignore.rb
49
69
 
50
- [Input]
51
- Feed
52
-
53
- [Output]
54
- Feed
55
-
56
70
  [Abstract]
57
71
  To exclude the NG word.
58
72
 
@@ -69,12 +83,6 @@ FilterImageSource
69
83
  [Path]
70
84
  /plugins/filter/image_source.rb
71
85
 
72
- [Input]
73
- Feed
74
-
75
- [Output]
76
- Feed
77
-
78
86
  [Abstract]
79
87
  Rewrite the permalink to source of the image in the contents.
80
88
  If there is no source of image, the permalink will be nil.
@@ -83,17 +91,25 @@ FilterImageSource
83
91
  - module: FilterImageSource
84
92
 
85
93
 
94
+ FilterAbsoluteURI
95
+ -----------------
96
+ [Path]
97
+ /plugins/filter/absolute_uri.rb
98
+
99
+ [Description]
100
+ Rewrite relative path to absolute one.
101
+
102
+ [Syntax]
103
+ - module: FilterAbsoluteURI
104
+ config:
105
+ url: http://targethost.com/
106
+
107
+
86
108
  FilterTumblrResize
87
109
  --------------------
88
110
  [Path]
89
111
  /plugins/filter/tumblr_resize.rb
90
112
 
91
- [Input]
92
- Feed
93
-
94
- [Output]
95
- Feed
96
-
97
113
  [Abstract]
98
114
  To rewrite the permalink to the maximum size of
99
115
  the Tumblr (High Res).
@@ -110,12 +126,6 @@ StorePermalink
110
126
  [Path]
111
127
  /plugins/store/permalink.rb
112
128
 
113
- [Input]
114
- Feed
115
-
116
- [Output]
117
- Feed
118
-
119
129
  [Abstract]
120
130
  Save a permanent link.
121
131
  The duplicate permalink will be discarded.
@@ -131,12 +141,6 @@ StoreFullText
131
141
  [Path]
132
142
  /plugins/store/full_text.rb
133
143
 
134
- [Input]
135
- Feed
136
-
137
- [Output]
138
- Feed
139
-
140
144
  [Abstract]
141
145
  Save a full text of contents.
142
146
 
@@ -154,12 +158,6 @@ StoreTargetLink
154
158
  [Path]
155
159
  /plugins/store/target_link.rb
156
160
 
157
- [Input]
158
- Feed
159
-
160
- [Output]
161
- Feed
162
-
163
161
  [Abstract]
164
162
  Store target locally.
165
163
  This emulate "Right click to save".
@@ -176,12 +174,6 @@ PublishConsole
176
174
  [Path]
177
175
  /plugins/publish/console.rb
178
176
 
179
- [Input]
180
- Feed
181
-
182
- [Output]
183
- Feed
184
-
185
177
  [Abstract]
186
178
  Output pipeline to the console.
187
179
 
@@ -194,12 +186,6 @@ PublishHatenaBookmark
194
186
  [Path]
195
187
  /plugins/publish/hatenabookmark.rb
196
188
 
197
- [Input]
198
- Feed
199
-
200
- [Output]
201
- Feed
202
-
203
189
  [Abstract]
204
190
  To Hatena Bookmark (Social Bookmark).
205
191
 
@@ -220,12 +206,6 @@ PublishGoogleCalendar
220
206
  [Path]
221
207
  /plugins/publish/google_calendar.rb
222
208
 
223
- [Input]
224
- Feed
225
-
226
- [Output]
227
- Feed
228
-
229
209
  [Abstract]
230
210
  To register an appointment to Google Calendar.
231
211
 
@@ -245,12 +225,6 @@ NotifyIkachan
245
225
  [Path]
246
226
  /plugins/notify/ikachan.rb
247
227
 
248
- [Input]
249
- Feed
250
-
251
- [Output]
252
- Feed
253
-
254
228
  [Abstract]
255
229
  To send a message to ikachan.
256
230
 
@@ -273,12 +247,6 @@ CustomFeedSVNLog
273
247
  [Path]
274
248
  /plugins/custom_feed/svn_log.rb
275
249
 
276
- [Input]
277
- None
278
-
279
- [Output]
280
- Feed
281
-
282
250
  [Abstract]
283
251
  Get new revision info from SVN.
284
252
 
@@ -292,103 +260,3 @@ CustomFeedSVNLog
292
260
  fetch_items: 2 # If not specified, 30
293
261
 
294
262
 
295
- SubscriptionURI
296
- ---------------
297
- [Path]
298
- /plugins/subscription/uri.rb
299
-
300
- [Input]
301
- None
302
-
303
- [Output]
304
- HTML
305
-
306
- [Description]
307
- Open http or ftp URL to file object.
308
-
309
- [Syntax]
310
- - module: CustomFeedURI
311
- config:
312
- url:
313
- - URL
314
- - URL ...
315
-
316
-
317
- ExtractLink
318
- -----------
319
- [Path]
320
- /plugins/extract/link.rb
321
-
322
- [Input]
323
- HTML
324
-
325
- [Output]
326
- An array of links.
327
-
328
- [Description]
329
- Extract a link in HTML.
330
-
331
- [Syntax]
332
- - module: FilterLink
333
-
334
-
335
- FilterImageLink
336
- ---------------
337
- [Path]
338
- /plugins/filter/image_link.rb
339
-
340
- [Input]
341
- An array of links.
342
-
343
- [Output]
344
- An array of links.
345
-
346
- [Description]
347
- Extract image's link from HTML.
348
-
349
- [Syntax]
350
- - module: FilterImageLink
351
-
352
-
353
- StoreLink
354
- ---------
355
- [Path]
356
- /plugins/store/link.rb
357
-
358
- [Input]
359
- An array of links.
360
-
361
- [Output]
362
- An array of links.
363
-
364
- [Abstract]
365
- Save a permanent link.
366
- The duplicate permalink will be discarded.
367
- This is a HTML version for StorePermalink.
368
-
369
- [Syntax]
370
- - module: StoreLink
371
- config:
372
- db: DB_NAME
373
-
374
-
375
- StoreTarget
376
- -----------
377
- [Path]
378
- /plugins/store/target.rb
379
-
380
- [Input]
381
- An array of links.
382
-
383
- [Output]
384
- An array of links.
385
-
386
- [Description]
387
- Store target locally by a link in HTML.
388
- This emulate "Right click to save".
389
-
390
- [Syntax]
391
- - module: StoreTarget
392
- config:
393
- path: SAVE_TO_PATH
394
- interval: INTERVAL_FOR_DOWNLOAD (in seconds.)