jekyll-import 0.14.0 → 0.15.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/jekyll-import.rb +2 -0
- data/lib/jekyll-import/importer.rb +5 -3
- data/lib/jekyll-import/importers.rb +3 -0
- data/lib/jekyll-import/importers/behance.rb +7 -6
- data/lib/jekyll-import/importers/blogger.rb +23 -38
- data/lib/jekyll-import/importers/csv.rb +6 -5
- data/lib/jekyll-import/importers/drupal6.rb +7 -5
- data/lib/jekyll-import/importers/drupal7.rb +15 -13
- data/lib/jekyll-import/importers/drupal_common.rb +55 -31
- data/lib/jekyll-import/importers/easyblog.rb +8 -8
- data/lib/jekyll-import/importers/enki.rb +14 -12
- data/lib/jekyll-import/importers/ghost.rb +4 -1
- data/lib/jekyll-import/importers/google_reader.rb +4 -4
- data/lib/jekyll-import/importers/joomla.rb +9 -9
- data/lib/jekyll-import/importers/joomla3.rb +15 -15
- data/lib/jekyll-import/importers/jrnl.rb +11 -9
- data/lib/jekyll-import/importers/marley.rb +12 -10
- data/lib/jekyll-import/importers/mephisto.rb +15 -15
- data/lib/jekyll-import/importers/mt.rb +16 -13
- data/lib/jekyll-import/importers/posterous.rb +12 -9
- data/lib/jekyll-import/importers/roller.rb +277 -0
- data/lib/jekyll-import/importers/rss.rb +18 -6
- data/lib/jekyll-import/importers/s9y.rb +3 -1
- data/lib/jekyll-import/importers/s9y_database.rb +38 -53
- data/lib/jekyll-import/importers/textpattern.rb +6 -4
- data/lib/jekyll-import/importers/tumblr.rb +101 -107
- data/lib/jekyll-import/importers/typo.rb +29 -27
- data/lib/jekyll-import/importers/wordpress.rb +47 -59
- data/lib/jekyll-import/importers/wordpressdotcom.rb +27 -32
- data/lib/jekyll-import/util.rb +2 -1
- data/lib/jekyll-import/version.rb +3 -1
- data/lib/jekyll/commands/import.rb +4 -7
- metadata +40 -40
- data/lib/jekyll-import/importers/tmp.rb +0 -0
@@ -1,3 +1,5 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
1
3
|
module JekyllImport
|
2
4
|
module Importers
|
3
5
|
class WordPress < Importer
|
@@ -12,21 +14,23 @@ module JekyllImport
|
|
12
14
|
end
|
13
15
|
|
14
16
|
def self.specify_options(c)
|
15
|
-
c.option "dbname",
|
16
|
-
c.option "socket",
|
17
|
-
c.option "user",
|
18
|
-
c.option "password",
|
19
|
-
c.option "host",
|
20
|
-
c.option "port",
|
21
|
-
c.option "table_prefix",
|
22
|
-
c.option "site_prefix",
|
23
|
-
c.option "clean_entities", "--clean_entities",
|
24
|
-
c.option "comments",
|
25
|
-
c.option "categories",
|
26
|
-
c.option "tags",
|
27
|
-
c.option "more_excerpt",
|
28
|
-
c.option "more_anchor",
|
29
|
-
|
17
|
+
c.option "dbname", "--dbname DB", "Database name (default: '')"
|
18
|
+
c.option "socket", "--socket SOCKET", "Database socket (default: '')"
|
19
|
+
c.option "user", "--user USER", "Database user name (default: '')"
|
20
|
+
c.option "password", "--password PW", "Database user's password (default: '')"
|
21
|
+
c.option "host", "--host HOST", "Database host name (default: 'localhost')"
|
22
|
+
c.option "port", "--port PORT", "Database port number (default: '')"
|
23
|
+
c.option "table_prefix", "--table_prefix PREFIX", "Table prefix name (default: 'wp_')"
|
24
|
+
c.option "site_prefix", "--site_prefix PREFIX", "Site prefix name (default: '')"
|
25
|
+
c.option "clean_entities", "--clean_entities", "Whether to clean entities (default: true)"
|
26
|
+
c.option "comments", "--comments", "Whether to import comments (default: true)"
|
27
|
+
c.option "categories", "--categories", "Whether to import categories (default: true)"
|
28
|
+
c.option "tags", "--tags", "Whether to import tags (default: true)"
|
29
|
+
c.option "more_excerpt", "--more_excerpt", "Whether to use more excerpt (default: true)"
|
30
|
+
c.option "more_anchor", "--more_anchor", "Whether to use more anchor (default: true)"
|
31
|
+
|
32
|
+
c.option "status", "--status STATUS,STATUS2", Array,
|
33
|
+
"Array of allowed statuses (default: ['publish'], other options: 'draft', 'private', 'revision')"
|
30
34
|
end
|
31
35
|
|
32
36
|
# Main migrator function. Call this to perform the migration.
|
@@ -107,12 +111,12 @@ module JekyllImport
|
|
107
111
|
FileUtils.mkdir_p("_drafts") if options[:status].include? :draft
|
108
112
|
|
109
113
|
db = Sequel.mysql2(options[:dbname],
|
110
|
-
|
111
|
-
|
112
|
-
|
113
|
-
|
114
|
-
|
115
|
-
|
114
|
+
:user => options[:user],
|
115
|
+
:password => options[:pass],
|
116
|
+
:socket => options[:socket],
|
117
|
+
:host => options[:host],
|
118
|
+
:port => options[:port],
|
119
|
+
:encoding => "utf8")
|
116
120
|
|
117
121
|
px = options[:table_prefix]
|
118
122
|
sx = options[:site_prefix]
|
@@ -129,9 +133,7 @@ module JekyllImport
|
|
129
133
|
WHERE posts.post_type = 'page'"
|
130
134
|
|
131
135
|
db[page_name_query].each do |page|
|
132
|
-
|
133
|
-
page[:slug] = sluggify(page[:title])
|
134
|
-
end
|
136
|
+
page[:slug] = sluggify(page[:title]) if page.fetch(:slug, "").empty?
|
135
137
|
page_name_list[ page[:id] ] = {
|
136
138
|
:slug => page[:slug],
|
137
139
|
:parent => page[:parent],
|
@@ -156,16 +158,16 @@ module JekyllImport
|
|
156
158
|
users.user_email AS `author_email`,
|
157
159
|
users.user_url AS `author_url`
|
158
160
|
FROM #{px}#{sx}posts AS `posts`
|
159
|
-
LEFT JOIN #{px}users AS `users`
|
161
|
+
LEFT JOIN #{px}#{sx}users AS `users`
|
160
162
|
ON posts.post_author = users.ID"
|
161
163
|
|
162
164
|
if options[:status] && !options[:status].empty?
|
163
165
|
status = options[:status][0]
|
164
166
|
posts_query << "
|
165
167
|
WHERE posts.post_status = '#{status}'"
|
166
|
-
options[:status][1..-1].each do |
|
168
|
+
options[:status][1..-1].each do |post_status|
|
167
169
|
posts_query << " OR
|
168
|
-
posts.post_status = '#{
|
170
|
+
posts.post_status = '#{post_status}'"
|
169
171
|
end
|
170
172
|
end
|
171
173
|
|
@@ -180,21 +182,15 @@ module JekyllImport
|
|
180
182
|
extension = options[:extension]
|
181
183
|
|
182
184
|
title = post[:title]
|
183
|
-
if options[:clean_entities]
|
184
|
-
title = clean_entities(title)
|
185
|
-
end
|
185
|
+
title = clean_entities(title) if options[:clean_entities]
|
186
186
|
|
187
187
|
slug = post[:slug]
|
188
|
-
if !slug || slug.empty?
|
189
|
-
slug = sluggify(title)
|
190
|
-
end
|
188
|
+
slug = sluggify(title) if !slug || slug.empty?
|
191
189
|
|
192
190
|
date = post[:date] || Time.now
|
193
191
|
name = format("%02d-%02d-%02d-%s.%s", date.year, date.month, date.day, slug, extension)
|
194
192
|
content = post[:content].to_s
|
195
|
-
if options[:clean_entities]
|
196
|
-
content = clean_entities(content)
|
197
|
-
end
|
193
|
+
content = clean_entities(content) if options[:clean_entities]
|
198
194
|
|
199
195
|
excerpt = post[:excerpt].to_s
|
200
196
|
|
@@ -233,24 +229,24 @@ module JekyllImport
|
|
233
229
|
|
234
230
|
db[cquery].each do |term|
|
235
231
|
if options[:categories] && term[:type] == "category"
|
236
|
-
if options[:clean_entities]
|
237
|
-
|
238
|
-
|
239
|
-
|
240
|
-
|
232
|
+
categories << if options[:clean_entities]
|
233
|
+
clean_entities(term[:name])
|
234
|
+
else
|
235
|
+
term[:name]
|
236
|
+
end
|
241
237
|
elsif options[:tags] && term[:type] == "post_tag"
|
242
|
-
if options[:clean_entities]
|
243
|
-
|
244
|
-
|
245
|
-
|
246
|
-
|
238
|
+
tags << if options[:clean_entities]
|
239
|
+
clean_entities(term[:name])
|
240
|
+
else
|
241
|
+
term[:name]
|
242
|
+
end
|
247
243
|
end
|
248
244
|
end
|
249
245
|
end
|
250
246
|
|
251
247
|
comments = []
|
252
248
|
|
253
|
-
if options[:comments] && post[:comment_count].to_i
|
249
|
+
if options[:comments] && post[:comment_count].to_i.positive?
|
254
250
|
cquery =
|
255
251
|
"SELECT
|
256
252
|
comment_ID AS `id`,
|
@@ -267,16 +263,10 @@ module JekyllImport
|
|
267
263
|
|
268
264
|
db[cquery].each do |comment|
|
269
265
|
comcontent = comment[:content].to_s
|
270
|
-
if comcontent.respond_to?(:force_encoding)
|
271
|
-
|
272
|
-
end
|
273
|
-
if options[:clean_entities]
|
274
|
-
comcontent = clean_entities(comcontent)
|
275
|
-
end
|
266
|
+
comcontent.force_encoding("UTF-8") if comcontent.respond_to?(:force_encoding)
|
267
|
+
comcontent = clean_entities(comcontent) if options[:clean_entities]
|
276
268
|
comauthor = comment[:author].to_s
|
277
|
-
if options[:clean_entities]
|
278
|
-
comauthor = clean_entities(comauthor)
|
279
|
-
end
|
269
|
+
comauthor = clean_entities(comauthor) if options[:clean_entities]
|
280
270
|
|
281
271
|
comments << {
|
282
272
|
"id" => comment[:id].to_i,
|
@@ -337,9 +327,7 @@ module JekyllImport
|
|
337
327
|
end
|
338
328
|
|
339
329
|
def self.clean_entities(text)
|
340
|
-
if text.respond_to?(:force_encoding)
|
341
|
-
text.force_encoding("UTF-8")
|
342
|
-
end
|
330
|
+
text.force_encoding("UTF-8") if text.respond_to?(:force_encoding)
|
343
331
|
text = HTMLEntities.new.encode(text, :named)
|
344
332
|
# We don't want to convert these, it would break all
|
345
333
|
# HTML tags in the post and comments.
|
@@ -1,4 +1,4 @@
|
|
1
|
-
#
|
1
|
+
# frozen_string_literal: true
|
2
2
|
|
3
3
|
module JekyllImport
|
4
4
|
module Importers
|
@@ -16,38 +16,37 @@ module JekyllImport
|
|
16
16
|
end
|
17
17
|
|
18
18
|
def self.specify_options(c)
|
19
|
-
c.option "source",
|
20
|
-
c.option "no_fetch_images", "--no-fetch-images",
|
21
|
-
c.option "assets_folder",
|
19
|
+
c.option "source", "--source FILE", 'WordPress export XML file (default: "wordpress.xml")'
|
20
|
+
c.option "no_fetch_images", "--no-fetch-images", "Do not fetch the images referenced in the posts"
|
21
|
+
c.option "assets_folder", "--assets_folder FOLDER", "Folder where assets such as images will be downloaded to (default: assets)"
|
22
22
|
end
|
23
23
|
|
24
24
|
# Will modify post DOM tree
|
25
25
|
def self.download_images(title, post_hpricot, assets_folder)
|
26
26
|
images = (post_hpricot / "img")
|
27
|
-
if images.empty?
|
28
|
-
|
29
|
-
|
30
|
-
puts "Downloading images for " + title
|
27
|
+
return if images.empty?
|
28
|
+
|
29
|
+
Jekyll.logger.info "Downloading images for ", title
|
31
30
|
images.each do |i|
|
32
31
|
uri = i["src"]
|
33
32
|
|
34
33
|
i["src"] = format("{{ site.baseurl }}/%s/%s", assets_folder, File.basename(uri))
|
35
34
|
dst = File.join(assets_folder, File.basename(uri))
|
36
|
-
|
35
|
+
Jekyll.logger.info uri
|
37
36
|
if File.exist?(dst)
|
38
|
-
|
37
|
+
Jekyll.logger.info "Already in cache. Clean assets folder if you want a redownload."
|
39
38
|
next
|
40
39
|
end
|
41
40
|
begin
|
42
|
-
|
41
|
+
URI.parse(uri, :allow_redirections => :safe).open do |f|
|
43
42
|
File.open(dst, "wb") do |out|
|
44
43
|
out.puts f.read
|
45
44
|
end
|
46
45
|
end
|
47
|
-
|
48
|
-
rescue => e
|
49
|
-
|
50
|
-
|
46
|
+
Jekyll.logger.info "OK!"
|
47
|
+
rescue StandardError => e
|
48
|
+
Jekyll.logger.error "Error: #{e.message}"
|
49
|
+
Jekyll.logger.error e.backtrace.join("\n")
|
51
50
|
end
|
52
51
|
end
|
53
52
|
end
|
@@ -76,23 +75,21 @@ module JekyllImport
|
|
76
75
|
end
|
77
76
|
|
78
77
|
def published_at
|
79
|
-
if published?
|
80
|
-
@published_at ||= Time.parse(text_for("wp:post_date"))
|
81
|
-
end
|
78
|
+
@published_at ||= Time.parse(text_for("wp:post_date")) if published?
|
82
79
|
end
|
83
80
|
|
84
81
|
def status
|
85
82
|
@status ||= text_for("wp:status")
|
86
83
|
end
|
87
|
-
|
88
|
-
def
|
89
|
-
@post_password ||= text_for(
|
84
|
+
|
85
|
+
def post_password
|
86
|
+
@post_password ||= text_for("wp:post_password")
|
90
87
|
end
|
91
88
|
|
92
89
|
def post_type
|
93
90
|
@post_type ||= text_for("wp:post_type")
|
94
91
|
end
|
95
|
-
|
92
|
+
|
96
93
|
def parent_id
|
97
94
|
@parent_id ||= text_for("wp:post_parent")
|
98
95
|
end
|
@@ -171,7 +168,7 @@ module JekyllImport
|
|
171
168
|
"type" => item.post_type,
|
172
169
|
"parent_id" => item.parent_id,
|
173
170
|
"published" => item.published?,
|
174
|
-
"password" => item.
|
171
|
+
"password" => item.post_password,
|
175
172
|
"status" => item.status,
|
176
173
|
"categories" => categories,
|
177
174
|
"tags" => tags,
|
@@ -183,9 +180,7 @@ module JekyllImport
|
|
183
180
|
content = Hpricot(item.text_for("content:encoded"))
|
184
181
|
header["excerpt"] = item.excerpt if item.excerpt
|
185
182
|
|
186
|
-
if fetch
|
187
|
-
download_images(item.title, content, assets_folder)
|
188
|
-
end
|
183
|
+
download_images(item.title, content, assets_folder) if fetch
|
189
184
|
|
190
185
|
FileUtils.mkdir_p item.directory_name
|
191
186
|
File.open(File.join(item.directory_name, item.file_name), "w") do |f|
|
@@ -193,11 +188,11 @@ module JekyllImport
|
|
193
188
|
f.puts "---"
|
194
189
|
f.puts Util.wpautop(content.to_html)
|
195
190
|
end
|
196
|
-
rescue => e
|
197
|
-
|
198
|
-
|
199
|
-
|
200
|
-
|
191
|
+
rescue StandardError => e
|
192
|
+
Jekyll.logger.error "Couldn't import post!"
|
193
|
+
Jekyll.logger.error "Title: #{item.title}"
|
194
|
+
Jekyll.logger.error "Name/Slug: #{item.file_name}\n"
|
195
|
+
Jekyll.logger.error "Error: #{e.message}"
|
201
196
|
next
|
202
197
|
end
|
203
198
|
|
@@ -205,7 +200,7 @@ module JekyllImport
|
|
205
200
|
end
|
206
201
|
|
207
202
|
import_count.each do |key, value|
|
208
|
-
|
203
|
+
Jekyll.logger.info "Imported #{value} #{key}s"
|
209
204
|
end
|
210
205
|
end
|
211
206
|
|
data/lib/jekyll-import/util.rb
CHANGED
@@ -1,6 +1,7 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
1
3
|
module JekyllImport
|
2
4
|
module Util
|
3
|
-
|
4
5
|
# Ruby translation of wordpress wpautop (see https://core.trac.wordpress.org/browser/trunk/src/wp-includes/formatting.php)
|
5
6
|
#
|
6
7
|
# A group of regex replaces used to identify text formatted with newlines and
|
@@ -1,7 +1,4 @@
|
|
1
|
-
#
|
2
|
-
$LOAD_PATH.unshift File.expand_path("../", __dir__)
|
3
|
-
require "jekyll/command"
|
4
|
-
require "jekyll-import"
|
1
|
+
# frozen_string_literal: true
|
5
2
|
|
6
3
|
module Jekyll
|
7
4
|
module Commands
|
@@ -51,7 +48,7 @@ module Jekyll
|
|
51
48
|
def process(migrator, options)
|
52
49
|
migrator = migrator.to_s.downcase
|
53
50
|
|
54
|
-
if IMPORTERS.
|
51
|
+
if IMPORTERS.key?(migrator.to_sym)
|
55
52
|
if JekyllImport::Importers.const_defined?(IMPORTERS[migrator.to_sym])
|
56
53
|
klass = JekyllImport::Importers.const_get(IMPORTERS[migrator.to_sym])
|
57
54
|
if options.respond_to?(:__hash__)
|
@@ -66,8 +63,8 @@ module Jekyll
|
|
66
63
|
end
|
67
64
|
|
68
65
|
def abort_on_invalid_migrator(migrator)
|
69
|
-
|
70
|
-
IMPORTERS.keys.each { |k|
|
66
|
+
warn "Sorry, '#{migrator}' isn't a valid migrator. Valid choices:"
|
67
|
+
IMPORTERS.keys.each { |k| warn "* #{k}" }
|
71
68
|
raise "'#{migrator}' is not a valid migrator."
|
72
69
|
end
|
73
70
|
end
|
metadata
CHANGED
@@ -1,57 +1,57 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: jekyll-import
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.15.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Tom Preston-Werner
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2018-
|
11
|
+
date: 2018-10-17 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: fastercsv
|
15
15
|
requirement: !ruby/object:Gem::Requirement
|
16
16
|
requirements:
|
17
|
-
- - "
|
17
|
+
- - "~>"
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: '0'
|
19
|
+
version: '1.0'
|
20
20
|
type: :runtime
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
|
-
- - "
|
24
|
+
- - "~>"
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version: '0'
|
26
|
+
version: '1.0'
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: jekyll
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
30
30
|
requirements:
|
31
|
-
- - "
|
31
|
+
- - "~>"
|
32
32
|
- !ruby/object:Gem::Version
|
33
|
-
version: '
|
33
|
+
version: '3.0'
|
34
34
|
type: :runtime
|
35
35
|
prerelease: false
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
37
37
|
requirements:
|
38
|
-
- - "
|
38
|
+
- - "~>"
|
39
39
|
- !ruby/object:Gem::Version
|
40
|
-
version: '
|
40
|
+
version: '3.0'
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
42
|
name: nokogiri
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
44
44
|
requirements:
|
45
|
-
- - "
|
45
|
+
- - "~>"
|
46
46
|
- !ruby/object:Gem::Version
|
47
|
-
version: '0'
|
47
|
+
version: '1.0'
|
48
48
|
type: :runtime
|
49
49
|
prerelease: false
|
50
50
|
version_requirements: !ruby/object:Gem::Requirement
|
51
51
|
requirements:
|
52
|
-
- - "
|
52
|
+
- - "~>"
|
53
53
|
- !ruby/object:Gem::Version
|
54
|
-
version: '0'
|
54
|
+
version: '1.0'
|
55
55
|
- !ruby/object:Gem::Dependency
|
56
56
|
name: activesupport
|
57
57
|
requirement: !ruby/object:Gem::Requirement
|
@@ -86,14 +86,14 @@ dependencies:
|
|
86
86
|
requirements:
|
87
87
|
- - "~>"
|
88
88
|
- !ruby/object:Gem::Version
|
89
|
-
version: 4.0
|
89
|
+
version: '4.0'
|
90
90
|
type: :development
|
91
91
|
prerelease: false
|
92
92
|
version_requirements: !ruby/object:Gem::Requirement
|
93
93
|
requirements:
|
94
94
|
- - "~>"
|
95
95
|
- !ruby/object:Gem::Version
|
96
|
-
version: 4.0
|
96
|
+
version: '4.0'
|
97
97
|
- !ruby/object:Gem::Dependency
|
98
98
|
name: redgreen
|
99
99
|
requirement: !ruby/object:Gem::Requirement
|
@@ -123,19 +123,19 @@ dependencies:
|
|
123
123
|
- !ruby/object:Gem::Version
|
124
124
|
version: '1.0'
|
125
125
|
- !ruby/object:Gem::Dependency
|
126
|
-
name: rubocop
|
126
|
+
name: rubocop-jekyll
|
127
127
|
requirement: !ruby/object:Gem::Requirement
|
128
128
|
requirements:
|
129
|
-
- -
|
129
|
+
- - "~>"
|
130
130
|
- !ruby/object:Gem::Version
|
131
|
-
version: '0.
|
131
|
+
version: '0.2'
|
132
132
|
type: :development
|
133
133
|
prerelease: false
|
134
134
|
version_requirements: !ruby/object:Gem::Requirement
|
135
135
|
requirements:
|
136
|
-
- -
|
136
|
+
- - "~>"
|
137
137
|
- !ruby/object:Gem::Version
|
138
|
-
version: '0.
|
138
|
+
version: '0.2'
|
139
139
|
- !ruby/object:Gem::Dependency
|
140
140
|
name: shoulda
|
141
141
|
requirement: !ruby/object:Gem::Requirement
|
@@ -170,14 +170,14 @@ dependencies:
|
|
170
170
|
requirements:
|
171
171
|
- - "~>"
|
172
172
|
- !ruby/object:Gem::Version
|
173
|
-
version: 1.0
|
173
|
+
version: '1.0'
|
174
174
|
type: :development
|
175
175
|
prerelease: false
|
176
176
|
version_requirements: !ruby/object:Gem::Requirement
|
177
177
|
requirements:
|
178
178
|
- - "~>"
|
179
179
|
- !ruby/object:Gem::Version
|
180
|
-
version: 1.0
|
180
|
+
version: '1.0'
|
181
181
|
- !ruby/object:Gem::Dependency
|
182
182
|
name: behance
|
183
183
|
requirement: !ruby/object:Gem::Requirement
|
@@ -238,16 +238,16 @@ dependencies:
|
|
238
238
|
name: open_uri_redirections
|
239
239
|
requirement: !ruby/object:Gem::Requirement
|
240
240
|
requirements:
|
241
|
-
- - "
|
241
|
+
- - "~>"
|
242
242
|
- !ruby/object:Gem::Version
|
243
|
-
version: '0'
|
243
|
+
version: '0.2'
|
244
244
|
type: :development
|
245
245
|
prerelease: false
|
246
246
|
version_requirements: !ruby/object:Gem::Requirement
|
247
247
|
requirements:
|
248
|
-
- - "
|
248
|
+
- - "~>"
|
249
249
|
- !ruby/object:Gem::Version
|
250
|
-
version: '0'
|
250
|
+
version: '0.2'
|
251
251
|
- !ruby/object:Gem::Dependency
|
252
252
|
name: pg
|
253
253
|
requirement: !ruby/object:Gem::Requirement
|
@@ -266,16 +266,16 @@ dependencies:
|
|
266
266
|
name: reverse_markdown
|
267
267
|
requirement: !ruby/object:Gem::Requirement
|
268
268
|
requirements:
|
269
|
-
- - "
|
269
|
+
- - "~>"
|
270
270
|
- !ruby/object:Gem::Version
|
271
|
-
version: '0'
|
271
|
+
version: '1.0'
|
272
272
|
type: :development
|
273
273
|
prerelease: false
|
274
274
|
version_requirements: !ruby/object:Gem::Requirement
|
275
275
|
requirements:
|
276
|
-
- - "
|
276
|
+
- - "~>"
|
277
277
|
- !ruby/object:Gem::Version
|
278
|
-
version: '0'
|
278
|
+
version: '1.0'
|
279
279
|
- !ruby/object:Gem::Dependency
|
280
280
|
name: sequel
|
281
281
|
requirement: !ruby/object:Gem::Requirement
|
@@ -296,28 +296,28 @@ dependencies:
|
|
296
296
|
requirements:
|
297
297
|
- - "~>"
|
298
298
|
- !ruby/object:Gem::Version
|
299
|
-
version: 1.3
|
299
|
+
version: '1.3'
|
300
300
|
type: :development
|
301
301
|
prerelease: false
|
302
302
|
version_requirements: !ruby/object:Gem::Requirement
|
303
303
|
requirements:
|
304
304
|
- - "~>"
|
305
305
|
- !ruby/object:Gem::Version
|
306
|
-
version: 1.3
|
306
|
+
version: '1.3'
|
307
307
|
- !ruby/object:Gem::Dependency
|
308
308
|
name: unidecode
|
309
309
|
requirement: !ruby/object:Gem::Requirement
|
310
310
|
requirements:
|
311
|
-
- - "
|
311
|
+
- - "~>"
|
312
312
|
- !ruby/object:Gem::Version
|
313
|
-
version: '0'
|
313
|
+
version: '1.0'
|
314
314
|
type: :development
|
315
315
|
prerelease: false
|
316
316
|
version_requirements: !ruby/object:Gem::Requirement
|
317
317
|
requirements:
|
318
|
-
- - "
|
318
|
+
- - "~>"
|
319
319
|
- !ruby/object:Gem::Version
|
320
|
-
version: '0'
|
320
|
+
version: '1.0'
|
321
321
|
- !ruby/object:Gem::Dependency
|
322
322
|
name: launchy
|
323
323
|
requirement: !ruby/object:Gem::Requirement
|
@@ -362,11 +362,11 @@ files:
|
|
362
362
|
- lib/jekyll-import/importers/mephisto.rb
|
363
363
|
- lib/jekyll-import/importers/mt.rb
|
364
364
|
- lib/jekyll-import/importers/posterous.rb
|
365
|
+
- lib/jekyll-import/importers/roller.rb
|
365
366
|
- lib/jekyll-import/importers/rss.rb
|
366
367
|
- lib/jekyll-import/importers/s9y.rb
|
367
368
|
- lib/jekyll-import/importers/s9y_database.rb
|
368
369
|
- lib/jekyll-import/importers/textpattern.rb
|
369
|
-
- lib/jekyll-import/importers/tmp.rb
|
370
370
|
- lib/jekyll-import/importers/tumblr.rb
|
371
371
|
- lib/jekyll-import/importers/typo.rb
|
372
372
|
- lib/jekyll-import/importers/wordpress.rb
|
@@ -387,7 +387,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
387
387
|
requirements:
|
388
388
|
- - ">="
|
389
389
|
- !ruby/object:Gem::Version
|
390
|
-
version: '2.
|
390
|
+
version: '2.3'
|
391
391
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
392
392
|
requirements:
|
393
393
|
- - ">="
|
@@ -395,7 +395,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
395
395
|
version: '0'
|
396
396
|
requirements: []
|
397
397
|
rubyforge_project:
|
398
|
-
rubygems_version: 2.7.
|
398
|
+
rubygems_version: 2.7.7
|
399
399
|
signing_key:
|
400
400
|
specification_version: 2
|
401
401
|
summary: Import command for Jekyll (static site generator).
|