github
Advanced Search
  • Home
  • Pricing and Signup
  • Explore GitHub
  • Blog
  • Login

jm3 / rubunkulous

  • Admin
  • Watch Unwatch
  • Fork
  • Your Fork
  • Pull Request
  • Download Source
    • 1
    • 1
  • Source
  • Commits
  • Network (1)
  • Issues (0)
  • Downloads (0)
  • Wiki (1)
  • Graphs
  • Branch: master

click here to add a description

click here to add a homepage

  • Branches (1)
    • master ✓
  • Tags (0)
Sending Request…
Enable Donations

Pledgie Donations

Once activated, we'll place the following badge in your repository's detail box:
Pledgie_example
This service is courtesy of Pledgie.

A re-entrant, resilient link-checker for Del.icio.us power-users — Read more

  cancel

http://jm3.net

  cancel
  • Private
  • Read-Only
  • HTTP Read-Only

This URL has Read+Write access

creds example for portability 
jm3 (author)
Sun Oct 18 12:22:50 -0700 2009
commit  2e907dc59d692d41247a3588aef56a2efb6607f2
tree    71a71b50e2bfc1e32fd78652b84e76b4344686a0
parent  3ffcae47abeb7e7ccd1960e23c4a079a51526449
rubunkulous /
name age
history
message
file .gitignore Loading commit data...
file README.markdown
directory bin/
file credentials.example.yml
file rubunkulous.gemspec
README.markdown

Rubunkulous!

A reentrant link-checker for delicious power-users, stress-tested with 50x the average user's no. of links.

To install:

    sudo gem install rubunkulous -s http://gemcutter.org

Features

  • Dead links are persisted in a Moneta cache for you to deal with as you please, e.g.

    xattr .moneta_cache/xattr_cache | xargs -n1 -I foo curl "http://api.delicious.com/delete?url=foo"
    
  • Fully stateful / self-healing; the last-checked link and any failed links are cached in the Moneta store for lossless reentrance.

  • Delicious API responses cached locally so they need only be retrieved once.

Usage

  1. enter your delicious username and password into credentials.yml
  2. ./rubunkulous.rb

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.

Todo

  • cool animated progress indicator - DONE!
  • use /posts/recent and /posts/update to do smarter change-detection to avoid re-fetches as new links are added. (/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)
  • test SAX parsing to see if it's a faster load
  • explore pipelining more link fetches in parallel (will require synchronized lock on link cursor)
Blog | Support | Training | Contact | API | Status | Twitter | Help | Security
© 2010 GitHub Inc. All rights reserved. | Terms of Service | Privacy Policy
Powered by the Dedicated Servers and
Cloud Computing of Rackspace Hosting®
Dedicated Server