rubunkulous 0.0.3 → 0.0.4
Sign up to get free protection for your applications and to get access to all the features.
- data/README.markdown +30 -0
- metadata +9 -8
data/README.markdown
ADDED
@@ -0,0 +1,30 @@
|
|
1
|
+
# Rubunkulous!
|
2
|
+
|
3
|
+
**A reentrant link-checker for delicious power-users, stress-tested with 50x the average user's no. of links.**
|
4
|
+
|
5
|
+
To install:
|
6
|
+
|
7
|
+
sudo gem install rubunkulous -s http://gemcutter.org
|
8
|
+
|
9
|
+
### Features
|
10
|
+
|
11
|
+
* Dead links are persisted in a [Moneta cache](http://github.com/wycats/moneta/tree/master) for you to deal with as you please, e.g.
|
12
|
+
|
13
|
+
xattr .moneta_cache/xattr_cache | xargs -n1 -I foo curl "http://api.delicious.com/delete?url=foo"
|
14
|
+
|
15
|
+
* Fully stateful / self-healing; the last-checked link and any failed links are cached in the Moneta store for lossless reentrance.
|
16
|
+
* [Delicious API](http://delicious.com/help/api) responses cached locally so they need only be retrieved once.
|
17
|
+
|
18
|
+
### Usage
|
19
|
+
|
20
|
+
1. enter your delicious username and password into credentials.yml
|
21
|
+
2. ./rubunkulous.rb
|
22
|
+
|
23
|
+
Rubunkulous is designed to perform well despite network errors, curl timeouts, etc. If it dies due to an uncaught exception (it shouldn't), just restart it and it will pick up where it left off.
|
24
|
+
|
25
|
+
### Todo
|
26
|
+
|
27
|
+
* cool animated progress indicator - DONE!
|
28
|
+
* use [/posts/recent](http://delicious.com/help/api#posts_recent) and [/posts/update](http://delicious.com/help/api#posts_update) to do smarter change-detection to avoid re-fetches as new links are added. ([/posts/all?hashes](http://delicious.com/help/api#posts_all_hashes) also exists but doesn't look useful in this situation, since we only want new appends to the head of the stack)
|
29
|
+
* test [SAX parsing](http://www.tutorialspoint.com/ruby/ruby_xml_xslt.htm) to see if it's a faster load
|
30
|
+
* explore pipelining more link fetches in parallel (will require synchronized lock on link cursor)
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rubunkulous
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- John Manoogian III
|
@@ -20,7 +20,7 @@ dependencies:
|
|
20
20
|
requirements:
|
21
21
|
- - ">="
|
22
22
|
- !ruby/object:Gem::Version
|
23
|
-
version:
|
23
|
+
version: 0.5.1.0
|
24
24
|
version:
|
25
25
|
- !ruby/object:Gem::Dependency
|
26
26
|
name: moneta
|
@@ -30,7 +30,7 @@ dependencies:
|
|
30
30
|
requirements:
|
31
31
|
- - ">="
|
32
32
|
- !ruby/object:Gem::Version
|
33
|
-
version:
|
33
|
+
version: 0.6.0
|
34
34
|
version:
|
35
35
|
- !ruby/object:Gem::Dependency
|
36
36
|
name: progressbar
|
@@ -40,18 +40,19 @@ dependencies:
|
|
40
40
|
requirements:
|
41
41
|
- - ">="
|
42
42
|
- !ruby/object:Gem::Version
|
43
|
-
version:
|
43
|
+
version: 0.0.3
|
44
44
|
version:
|
45
|
-
description: reentrant link-checker for del.icio.us power-users
|
45
|
+
description: reentrant link-checker for del.icio.us power-users.
|
46
46
|
email: jm3@jm3.net
|
47
47
|
executables:
|
48
48
|
- rubunkulous
|
49
49
|
extensions: []
|
50
50
|
|
51
|
-
extra_rdoc_files:
|
52
|
-
|
51
|
+
extra_rdoc_files:
|
52
|
+
- README.markdown
|
53
53
|
files:
|
54
54
|
- bin/rubunkulous
|
55
|
+
- README.markdown
|
55
56
|
has_rdoc: true
|
56
57
|
homepage: http://jm3.net/
|
57
58
|
licenses: []
|
@@ -75,7 +76,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
75
76
|
version:
|
76
77
|
requirements: []
|
77
78
|
|
78
|
-
rubyforge_project:
|
79
|
+
rubyforge_project: your-mom
|
79
80
|
rubygems_version: 1.3.5
|
80
81
|
signing_key:
|
81
82
|
specification_version: 3
|