short 0.2.1 → 0.3.0
Sign up to get free protection for your applications and to get access to all the features.
- data/README.md +53 -0
- data/bin/{shortener → short} +5 -2
- data/lib/shortener/version.rb +1 -1
- data/short.gemspec +27 -0
- metadata +43 -9
data/README.md
CHANGED
@@ -7,3 +7,56 @@ Check it out [here](http://shortener1.heroku.com), but be aware that the css on
|
|
7
7
|
|
8
8
|
:edit: the version ^ there is an oldy but a goody. There's been a lot of feature creep since then which would muck up a demo. Very soon there will be a way to disable said feature creep and we'll get a new demo.
|
9
9
|
|
10
|
+
### Configuration
|
11
|
+
|
12
|
+
Currently, short uses either environment variables or settings from a config file, ~/.shortener.
|
13
|
+
|
14
|
+
for the `short` client to work, you only need something like
|
15
|
+
<pre>
|
16
|
+
---
|
17
|
+
:SHORTENER_URL: http://< your shortener url>
|
18
|
+
</pre>
|
19
|
+
|
20
|
+
checkout `lib/shortener/configuration.rb` for more options that you can set.
|
21
|
+
|
22
|
+
I'm going to put together a better way of handling this soon, because right now
|
23
|
+
it's kind of a mess.
|
24
|
+
|
25
|
+
### Usage
|
26
|
+
|
27
|
+
Use the `short` executable to
|
28
|
+
|
29
|
+
* start the shortener server
|
30
|
+
* shorten a url
|
31
|
+
* fetch info on a short
|
32
|
+
* delete a short
|
33
|
+
* view the index of shorts
|
34
|
+
* run a `short` rake task.
|
35
|
+
|
36
|
+
#### Rake
|
37
|
+
|
38
|
+
Short provides rake tasks for building and deploying an instance on heroku.
|
39
|
+
Once you have `short server` running locally (i.e. you've figured out the conf stuff)
|
40
|
+
you can run `short rake heroku:setup` and it will create a git repo of the necessary
|
41
|
+
server files, create a heroku app, add the needed addons and push to the created heroku app.
|
42
|
+
Run `short rake -T` to see more info.
|
43
|
+
|
44
|
+
|
45
|
+
### License
|
46
|
+
|
47
|
+
|
48
|
+
<pre>
|
49
|
+
DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE
|
50
|
+
Version 2, December 2004
|
51
|
+
|
52
|
+
Copyright (C) 20011 Jake Wilkins <jake AT jakewilkins DOT com>
|
53
|
+
|
54
|
+
Everyone is permitted to copy and distribute verbatim or modified
|
55
|
+
copies of this license document, and changing it is allowed as long
|
56
|
+
as the name is changed.
|
57
|
+
|
58
|
+
DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE
|
59
|
+
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
|
60
|
+
|
61
|
+
0. You just DO WHAT THE FUCK YOU WANT TO.
|
62
|
+
</pre>
|
data/bin/{shortener → short}
RENAMED
@@ -52,7 +52,7 @@ end
|
|
52
52
|
|
53
53
|
def show_index
|
54
54
|
index = Shortener::Client.new.index
|
55
|
-
short_summary = index.map do |v|
|
55
|
+
short_summary = index.map do |v|
|
56
56
|
url = v['url'].length > 38 ? "#{v['url'][0..25]}...#{v['url'][-10..-1]}" : "#{v['url']}"
|
57
57
|
"#{v['shortened']} : #{url} #{v['type'].nil? ? '' : ('type: ' + v['type'])}"
|
58
58
|
end.join("\n")
|
@@ -85,12 +85,15 @@ def usage
|
|
85
85
|
Usage: shortener COMMAND <arg>
|
86
86
|
|
87
87
|
a command could be:
|
88
|
+
server: start an instance of the shortener server locally.
|
88
89
|
shorten: get a shortened version of <arg>.
|
89
90
|
fetch: get data for <arg> which should be a short.
|
91
|
+
delete: delete a short from the index.
|
90
92
|
index: show summary data for all shorts.
|
93
|
+
rake: run a shortener rake task. [heroku:build, heroku:setup...]
|
91
94
|
|
92
95
|
the default command is shorten, so that one could
|
93
|
-
|
96
|
+
|
94
97
|
shortener www.google.com
|
95
98
|
|
96
99
|
and the result would be a short for www.google.com
|
data/lib/shortener/version.rb
CHANGED
data/short.gemspec
ADDED
@@ -0,0 +1,27 @@
|
|
1
|
+
# -*- encoding: utf-8 -*-
|
2
|
+
$:.push File.expand_path("../lib", __FILE__)
|
3
|
+
require "shortener/version"
|
4
|
+
|
5
|
+
Gem::Specification.new do |s|
|
6
|
+
s.name = "short"
|
7
|
+
s.version = Shortener::VERSION
|
8
|
+
s.authors = ["Jake Wilkins"]
|
9
|
+
s.email = ["jake@jakewilkins.com"]
|
10
|
+
s.homepage = ""
|
11
|
+
s.summary = %q{A Link Shortener}
|
12
|
+
s.description = %q{A (hopefully) easy and handy deployable APIable way to shorten links.}
|
13
|
+
|
14
|
+
#s.rubyforge_project = "shortener"
|
15
|
+
|
16
|
+
s.files = `git ls-files`.split("\n")
|
17
|
+
s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
|
18
|
+
s.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
|
19
|
+
s.require_paths = ["lib"]
|
20
|
+
|
21
|
+
# specify any dependencies here; for example:
|
22
|
+
s.add_development_dependency "sinatra"
|
23
|
+
s.add_development_dependency "redis-namespace"
|
24
|
+
s.add_development_dependency "haml"
|
25
|
+
s.add_development_dependency "turn"
|
26
|
+
#s.add_runtime_dependency "rest-client"
|
27
|
+
end
|
metadata
CHANGED
@@ -1,19 +1,52 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: short
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.3.0
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
8
|
-
-
|
8
|
+
- Jake Wilkins
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
12
|
date: 2011-12-23 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
|
+
- !ruby/object:Gem::Dependency
|
15
|
+
name: sinatra
|
16
|
+
requirement: &70335546444520 !ruby/object:Gem::Requirement
|
17
|
+
none: false
|
18
|
+
requirements:
|
19
|
+
- - ! '>='
|
20
|
+
- !ruby/object:Gem::Version
|
21
|
+
version: '0'
|
22
|
+
type: :development
|
23
|
+
prerelease: false
|
24
|
+
version_requirements: *70335546444520
|
25
|
+
- !ruby/object:Gem::Dependency
|
26
|
+
name: redis-namespace
|
27
|
+
requirement: &70335546443200 !ruby/object:Gem::Requirement
|
28
|
+
none: false
|
29
|
+
requirements:
|
30
|
+
- - ! '>='
|
31
|
+
- !ruby/object:Gem::Version
|
32
|
+
version: '0'
|
33
|
+
type: :development
|
34
|
+
prerelease: false
|
35
|
+
version_requirements: *70335546443200
|
36
|
+
- !ruby/object:Gem::Dependency
|
37
|
+
name: haml
|
38
|
+
requirement: &70335546441520 !ruby/object:Gem::Requirement
|
39
|
+
none: false
|
40
|
+
requirements:
|
41
|
+
- - ! '>='
|
42
|
+
- !ruby/object:Gem::Version
|
43
|
+
version: '0'
|
44
|
+
type: :development
|
45
|
+
prerelease: false
|
46
|
+
version_requirements: *70335546441520
|
14
47
|
- !ruby/object:Gem::Dependency
|
15
48
|
name: turn
|
16
|
-
requirement: &
|
49
|
+
requirement: &70335546438400 !ruby/object:Gem::Requirement
|
17
50
|
none: false
|
18
51
|
requirements:
|
19
52
|
- - ! '>='
|
@@ -21,19 +54,19 @@ dependencies:
|
|
21
54
|
version: '0'
|
22
55
|
type: :development
|
23
56
|
prerelease: false
|
24
|
-
version_requirements: *
|
25
|
-
description: A (hopefully) easy and handy way to shorten links.
|
57
|
+
version_requirements: *70335546438400
|
58
|
+
description: A (hopefully) easy and handy deployable APIable way to shorten links.
|
26
59
|
email:
|
27
|
-
- jake
|
60
|
+
- jake@jakewilkins.com
|
28
61
|
executables:
|
29
|
-
-
|
62
|
+
- short
|
30
63
|
extensions: []
|
31
64
|
extra_rdoc_files: []
|
32
65
|
files:
|
33
66
|
- .gitignore
|
34
67
|
- README.md
|
35
68
|
- Rakefile
|
36
|
-
- bin/
|
69
|
+
- bin/short
|
37
70
|
- config.ru
|
38
71
|
- lib/shortener.rb
|
39
72
|
- lib/shortener/client.rb
|
@@ -68,6 +101,7 @@ files:
|
|
68
101
|
- lib/shortener/server/views/s3/video.haml
|
69
102
|
- lib/shortener/server/views/upload.haml
|
70
103
|
- lib/shortener/version.rb
|
104
|
+
- short.gemspec
|
71
105
|
- tasks/heroku.rake
|
72
106
|
- test/test_client.rb
|
73
107
|
- test/test_configuration.rb
|
@@ -95,7 +129,7 @@ rubyforge_project:
|
|
95
129
|
rubygems_version: 1.8.10
|
96
130
|
signing_key:
|
97
131
|
specification_version: 3
|
98
|
-
summary: Link Shortener
|
132
|
+
summary: A Link Shortener
|
99
133
|
test_files:
|
100
134
|
- test/test_client.rb
|
101
135
|
- test/test_configuration.rb
|