pdfkit 0.4.2 → 0.5.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.
- data/.gitignore +2 -0
- data/Gemfile +3 -0
- data/Gemfile.lock +32 -0
- data/History.md +9 -0
- data/POST_INSTALL +11 -5
- data/README.md +52 -13
- data/Rakefile +2 -21
- data/lib/pdfkit/configuration.rb +12 -9
- data/lib/pdfkit/middleware.rb +61 -47
- data/lib/pdfkit/pdfkit.rb +39 -34
- data/lib/pdfkit/source.rb +2 -6
- data/lib/pdfkit/version.rb +3 -0
- data/lib/pdfkit.rb +1 -2
- data/pdfkit.gemspec +18 -74
- data/spec/middleware_spec.rb +129 -23
- data/spec/pdfkit_spec.rb +53 -38
- data/spec/source_spec.rb +5 -0
- data/spec/spec_helper.rb +3 -7
- metadata +34 -45
- data/VERSION +0 -1
- data/bin/pdfkit +0 -68
metadata
CHANGED
|
@@ -1,22 +1,22 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: pdfkit
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
hash: 11
|
|
5
4
|
prerelease: false
|
|
6
5
|
segments:
|
|
7
6
|
- 0
|
|
8
|
-
-
|
|
9
|
-
-
|
|
10
|
-
version: 0.
|
|
7
|
+
- 5
|
|
8
|
+
- 0
|
|
9
|
+
version: 0.5.0
|
|
11
10
|
platform: ruby
|
|
12
11
|
authors:
|
|
13
|
-
-
|
|
12
|
+
- Jared Pace
|
|
13
|
+
- Relevance
|
|
14
14
|
autorequire:
|
|
15
15
|
bindir: bin
|
|
16
16
|
cert_chain: []
|
|
17
17
|
|
|
18
|
-
date: 2010-
|
|
19
|
-
default_executable:
|
|
18
|
+
date: 2010-12-27 00:00:00 -05:00
|
|
19
|
+
default_executable:
|
|
20
20
|
dependencies:
|
|
21
21
|
- !ruby/object:Gem::Dependency
|
|
22
22
|
name: rspec
|
|
@@ -26,72 +26,69 @@ dependencies:
|
|
|
26
26
|
requirements:
|
|
27
27
|
- - ~>
|
|
28
28
|
- !ruby/object:Gem::Version
|
|
29
|
-
hash: 62196467
|
|
30
29
|
segments:
|
|
31
30
|
- 2
|
|
31
|
+
- 2
|
|
32
32
|
- 0
|
|
33
|
-
|
|
34
|
-
- beta
|
|
35
|
-
- 8
|
|
36
|
-
version: 2.0.0.beta.8
|
|
33
|
+
version: 2.2.0
|
|
37
34
|
type: :development
|
|
38
35
|
version_requirements: *id001
|
|
39
36
|
- !ruby/object:Gem::Dependency
|
|
40
|
-
name:
|
|
37
|
+
name: mocha
|
|
41
38
|
prerelease: false
|
|
42
39
|
requirement: &id002 !ruby/object:Gem::Requirement
|
|
43
40
|
none: false
|
|
44
41
|
requirements:
|
|
45
|
-
- -
|
|
42
|
+
- - ">="
|
|
46
43
|
- !ruby/object:Gem::Version
|
|
47
|
-
hash: 62196467
|
|
48
44
|
segments:
|
|
49
|
-
- 2
|
|
50
|
-
- 0
|
|
51
45
|
- 0
|
|
52
|
-
-
|
|
53
|
-
-
|
|
54
|
-
version:
|
|
46
|
+
- 9
|
|
47
|
+
- 10
|
|
48
|
+
version: 0.9.10
|
|
55
49
|
type: :development
|
|
56
50
|
version_requirements: *id002
|
|
57
51
|
- !ruby/object:Gem::Dependency
|
|
58
|
-
name:
|
|
52
|
+
name: rack-test
|
|
59
53
|
prerelease: false
|
|
60
54
|
requirement: &id003 !ruby/object:Gem::Requirement
|
|
61
55
|
none: false
|
|
62
56
|
requirements:
|
|
63
57
|
- - ">="
|
|
64
58
|
- !ruby/object:Gem::Version
|
|
65
|
-
hash: 3
|
|
66
59
|
segments:
|
|
67
60
|
- 0
|
|
68
|
-
|
|
61
|
+
- 5
|
|
62
|
+
- 6
|
|
63
|
+
version: 0.5.6
|
|
69
64
|
type: :development
|
|
70
65
|
version_requirements: *id003
|
|
71
66
|
description: Uses wkhtmltopdf to create PDFs using HTML
|
|
72
|
-
email:
|
|
73
|
-
|
|
74
|
-
|
|
67
|
+
email:
|
|
68
|
+
- jared@codewordstudios.com
|
|
69
|
+
executables: []
|
|
70
|
+
|
|
75
71
|
extensions: []
|
|
76
72
|
|
|
77
|
-
extra_rdoc_files:
|
|
78
|
-
|
|
79
|
-
- README.md
|
|
73
|
+
extra_rdoc_files: []
|
|
74
|
+
|
|
80
75
|
files:
|
|
81
76
|
- .document
|
|
82
77
|
- .gitignore
|
|
83
78
|
- .rspec
|
|
79
|
+
- Gemfile
|
|
80
|
+
- Gemfile.lock
|
|
81
|
+
- History.md
|
|
84
82
|
- LICENSE
|
|
85
83
|
- POST_INSTALL
|
|
86
84
|
- README.md
|
|
87
85
|
- Rakefile
|
|
88
|
-
- VERSION
|
|
89
|
-
- bin/pdfkit
|
|
90
86
|
- lib/pdfkit.rb
|
|
91
87
|
- lib/pdfkit/configuration.rb
|
|
92
88
|
- lib/pdfkit/middleware.rb
|
|
93
89
|
- lib/pdfkit/pdfkit.rb
|
|
94
90
|
- lib/pdfkit/source.rb
|
|
91
|
+
- lib/pdfkit/version.rb
|
|
95
92
|
- pdfkit.gemspec
|
|
96
93
|
- spec/fixtures/example.css
|
|
97
94
|
- spec/fixtures/example.html
|
|
@@ -103,17 +100,9 @@ has_rdoc: true
|
|
|
103
100
|
homepage: http://github.com/jdpace/PDFKit
|
|
104
101
|
licenses: []
|
|
105
102
|
|
|
106
|
-
post_install_message:
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
Now install wkhtmltopdf binaries:
|
|
110
|
-
Global: sudo `which pdfkit` --install-wkhtmltopdf
|
|
111
|
-
or inside RVM folder: export TO=`which pdfkit | sed 's:/pdfkit:/wkhtmltopdf:'` && pdfkit --install-wkhtmltopdf
|
|
112
|
-
(run pdfkit --help to see more options)
|
|
113
|
-
|
|
114
|
-
******************************************************************
|
|
115
|
-
rdoc_options:
|
|
116
|
-
- --charset=UTF-8
|
|
103
|
+
post_install_message:
|
|
104
|
+
rdoc_options: []
|
|
105
|
+
|
|
117
106
|
require_paths:
|
|
118
107
|
- lib
|
|
119
108
|
required_ruby_version: !ruby/object:Gem::Requirement
|
|
@@ -121,7 +110,6 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
|
121
110
|
requirements:
|
|
122
111
|
- - ">="
|
|
123
112
|
- !ruby/object:Gem::Version
|
|
124
|
-
hash: 3
|
|
125
113
|
segments:
|
|
126
114
|
- 0
|
|
127
115
|
version: "0"
|
|
@@ -130,18 +118,19 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
130
118
|
requirements:
|
|
131
119
|
- - ">="
|
|
132
120
|
- !ruby/object:Gem::Version
|
|
133
|
-
hash: 3
|
|
134
121
|
segments:
|
|
135
122
|
- 0
|
|
136
123
|
version: "0"
|
|
137
124
|
requirements: []
|
|
138
125
|
|
|
139
|
-
rubyforge_project:
|
|
126
|
+
rubyforge_project: pdfkit
|
|
140
127
|
rubygems_version: 1.3.7
|
|
141
128
|
signing_key:
|
|
142
129
|
specification_version: 3
|
|
143
130
|
summary: HTML+CSS -> PDF
|
|
144
131
|
test_files:
|
|
132
|
+
- spec/fixtures/example.css
|
|
133
|
+
- spec/fixtures/example.html
|
|
145
134
|
- spec/middleware_spec.rb
|
|
146
135
|
- spec/pdfkit_spec.rb
|
|
147
136
|
- spec/source_spec.rb
|
data/VERSION
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
0.4.2
|
data/bin/pdfkit
DELETED
|
@@ -1,68 +0,0 @@
|
|
|
1
|
-
#!/usr/bin/env ruby
|
|
2
|
-
require 'rubygems'
|
|
3
|
-
require 'optparse'
|
|
4
|
-
require 'rbconfig'
|
|
5
|
-
require 'open-uri'
|
|
6
|
-
require 'pdfkit/configuration'
|
|
7
|
-
|
|
8
|
-
def detect_architecture
|
|
9
|
-
case Config::CONFIG['host_os']
|
|
10
|
-
when /x86_64-linux/i
|
|
11
|
-
'amd64'
|
|
12
|
-
when /linux/i
|
|
13
|
-
'i386'
|
|
14
|
-
when /darwin/i
|
|
15
|
-
'OS-X.i368'
|
|
16
|
-
else
|
|
17
|
-
raise "No binaries found for your system. Please install wkhtmltopdf by hand."
|
|
18
|
-
end
|
|
19
|
-
end
|
|
20
|
-
|
|
21
|
-
def cleanup(install_to)
|
|
22
|
-
`rm -rf wkhtmltopdf*`
|
|
23
|
-
`rm #{install_to}`
|
|
24
|
-
end
|
|
25
|
-
|
|
26
|
-
def download_wkhtmltopdf(arch)
|
|
27
|
-
page = open("http://code.google.com/p/wkhtmltopdf/downloads/list").read
|
|
28
|
-
download = page.match(/href=".*name=(.*wkhtmltopdf-.*#{arch}.*?)&/) || raise("File not found..")
|
|
29
|
-
download = download[1]
|
|
30
|
-
url = "http://wkhtmltopdf.googlecode.com/files/#{download}"
|
|
31
|
-
puts "Downloading #{download} from #{url}"
|
|
32
|
-
|
|
33
|
-
`curl #{url} > #{download}`
|
|
34
|
-
download
|
|
35
|
-
end
|
|
36
|
-
|
|
37
|
-
def install(download, arch, install_to)
|
|
38
|
-
puts "Installing #{download} to #{install_to}"
|
|
39
|
-
if download =~ /.tar.bz2$/
|
|
40
|
-
`tar xjvf #{download}`
|
|
41
|
-
`mv wkhtmltopdf-#{arch} #{install_to}`
|
|
42
|
-
else
|
|
43
|
-
`mv #{download} #{install_to}`
|
|
44
|
-
end
|
|
45
|
-
`sudo chmod +x #{install_to}`
|
|
46
|
-
end
|
|
47
|
-
|
|
48
|
-
OptionParser.new do |parser|
|
|
49
|
-
parser.banner = "PDFKit\n\nOptions are:"
|
|
50
|
-
|
|
51
|
-
parser.on("--install-wkhtmltopdf", "Install wkhtmltopdf binaries (TO=/usr/local/bin ARCHITECTURE=i386)") do
|
|
52
|
-
architecture = ENV['ARCHITECTURE'] || detect_architecture
|
|
53
|
-
install_to = ENV['TO'] || PDFKit.configuration.wkhtmltopdf
|
|
54
|
-
|
|
55
|
-
Dir.chdir '/tmp'
|
|
56
|
-
|
|
57
|
-
cleanup(install_to)
|
|
58
|
-
download = download_wkhtmltopdf(architecture)
|
|
59
|
-
install(download, architecture, install_to)
|
|
60
|
-
end
|
|
61
|
-
|
|
62
|
-
parser.on("--version", "Show Version.") do
|
|
63
|
-
root = File.dirname(File.dirname(__FILE__))
|
|
64
|
-
puts File.read(File.join(root, 'VERSION'))
|
|
65
|
-
end
|
|
66
|
-
|
|
67
|
-
parser.on("-h", "--help", "Show this.") { puts parser; exit }
|
|
68
|
-
end.parse!
|