epub-maker 0.1.8 → 0.2.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 1b26628c4a7d89e94b8e25bc92d7013aae3f6425a93b2b8af0797e47d4a658a7
4
- data.tar.gz: bc67628100b42657aa0bfe5fa380051a46e17e2a20474c8bd0534afd11eeaf81
3
+ metadata.gz: 8db2f63b56d79949a6fbeb34d4a18d17179d7eafd79b140eecee4ec863811bea
4
+ data.tar.gz: 3c06d5c127dfe80c35e0e023a6143070d68285df5d41e49c05c72b14c78a6afa
5
5
  SHA512:
6
- metadata.gz: d74593cad469b3d3acd0be9542536cbca6ca4e31376bf4536ec87737d44c924dce582b71091d6a9b5ad3e2743a48869f65a38fced547bbf0bc1a2a6d96acfcc6
7
- data.tar.gz: e0d2cdcac5d58ea1bac5f495434dfe35b1bb78720e084823de14e0814c4739961a20b2a45765fdc29e6ca2304d7762d4edb5a42a54b9c3a7661a68521a9fd308
6
+ metadata.gz: 8cde226fa77ce56db13f1b43b13e4b804d1bcea44fc98edeaab0f96cefeaccf5af749d37a90bca3ef6cc35fb98fab197a07133a5f62a68cc2f55f97f87fa6dd2
7
+ data.tar.gz: 376e3f6f5c8df3a28005a5e365930f595bb12a1233a6159519eac32ba7966caff8f99c7510e46ffbb57e24ed52de3f34128faacf5c9ee0066f6bb0c5eeea55f2
data/.gitlab-ci.yml CHANGED
@@ -3,20 +3,9 @@ before_script:
3
3
  - which ruby
4
4
  - apt -qq update -y
5
5
  - apt -qq install -y default-jre
6
- - gem install bundler --no-document
7
6
  - bundle install --jobs=$(nproc) --path=deps --quiet
8
7
  - bundle clean
9
8
 
10
- test:2.6:
11
- image: ruby:2.6
12
- script: bundle exec rake test
13
- except:
14
- - tags
15
- cache:
16
- key: ruby:2.6
17
- paths:
18
- - deps
19
-
20
9
  test:2.7:
21
10
  image: ruby:2.7
22
11
  script: bundle exec rake test
@@ -56,3 +45,23 @@ test:3.2:
56
45
  key: ruby:3.2
57
46
  paths:
58
47
  - deps
48
+
49
+ test:3.3:
50
+ image: ruby:3.3
51
+ script: bundle exec rake test
52
+ except:
53
+ - tags
54
+ cache:
55
+ key: ruby:3.3
56
+ paths:
57
+ - deps
58
+
59
+ test:3.4:
60
+ image: ruby:3.4
61
+ script: bundle exec rake test
62
+ except:
63
+ - tags
64
+ cache:
65
+ key: ruby:3.4
66
+ paths:
67
+ - deps
data/CHANGELOG.markdown CHANGED
@@ -1,3 +1,13 @@
1
+ 0.2.0
2
+ -----
3
+
4
+ * Update dependent Archive::Zip version to 0.13.0
5
+
6
+ 0.1.9
7
+ -----
8
+
9
+ * Fix output of package@prefix
10
+
1
11
  0.1.8
2
12
  -----
3
13
 
data/Gemfile CHANGED
@@ -1,8 +1,8 @@
1
1
  source 'https://rubygems.org'
2
2
 
3
- if ENV['EDGE_PARSER'] == '1'
3
+ if ENV["EPUB_PARSER_PATH"]
4
4
  group :development do
5
- gem 'epub-parser', path: '../epub-parser'
5
+ gem 'epub-parser', path: ENV["EPUB_PARSER_PATH"]
6
6
  end
7
7
  end
8
8
 
data/README.markdown CHANGED
@@ -177,6 +177,14 @@ Todo
177
177
 
178
178
  Recent Changes
179
179
  --------------
180
+ ### 0.2.0
181
+
182
+ * Update dependent Archive::Zip version to 0.13.0
183
+
184
+ ### 0.1.9
185
+
186
+ * Fix output of package@prefix
187
+
180
188
  ### 0.1.8
181
189
 
182
190
  * Add adapter for Rubyzip
data/epub-maker.gemspec CHANGED
@@ -22,13 +22,13 @@ Gem::Specification.new do |gem|
22
22
 
23
23
  gem.add_runtime_dependency 'epub-parser', '>= 0.4.8'
24
24
  gem.add_runtime_dependency 'mimemagic'
25
- gem.add_runtime_dependency 'archive-zip'
25
+ gem.add_runtime_dependency 'archive-zip', ">= 0.13.0"
26
26
  gem.add_runtime_dependency 'rake'
27
27
  gem.add_runtime_dependency 'addressable', '>= 2.3.5'
28
28
  gem.add_runtime_dependency 'rexml'
29
29
  gem.add_runtime_dependency "nokogiri"
30
30
 
31
- gem.add_development_dependency 'zipruby' unless RUBY_PLATFORM.match /mingw|arm64-darwin/
31
+ gem.add_development_dependency 'zipruby'
32
32
  gem.add_development_dependency 'rubyzip'
33
33
  gem.add_development_dependency 'test-unit'
34
34
  gem.add_development_dependency 'test-unit-notify'
@@ -8,31 +8,27 @@ module EPUB
8
8
  def write(path_name, content, mtime: nil)
9
9
  ::Dir.mktmpdir do |dir|
10
10
  tmp_archive_path = ::File.join(dir, ::File.basename(@container_path) + '.tmp')
11
- ::File.open @container_path do |archive_in|
12
- ::File.open tmp_archive_path, 'w' do |archive_out|
13
- archive_out.binmode
14
- Archive::Zip.open archive_in, :r do |z_in|
15
- Archive::Zip.open archive_out, :w do |z_out|
16
- updated = false
17
- z_in.each do |entry|
18
- if entry.zip_path == path_name.force_encoding('ASCII-8BIT')
19
- entry.file_data = StringIO.new(content)
20
- updated = true
21
- end
22
- if mtime
23
- entry.mtime = mtime
24
- end
25
- z_out << entry
26
- end
27
- unless updated
28
- entry = Archive::Zip::Entry::File.new(path_name)
29
- entry.file_data = StringIO.new(content)
30
- if mtime
31
- entry.mtime = mtime
32
- end
33
- z_out << entry
34
- end
11
+ Archive::Zip.open @container_path, :r do |z_in|
12
+ Archive::Zip.open tmp_archive_path, :w do |z_out|
13
+ updated = false
14
+ z_in.each do |entry|
15
+ if entry.zip_path == path_name.force_encoding('ASCII-8BIT')
16
+ entry = entry.dup
17
+ entry.file_data = IO::LikeHelpers::IOWrapper.new(StringIO.new(content))
18
+ updated = true
35
19
  end
20
+ if mtime
21
+ entry.mtime = mtime
22
+ end
23
+ z_out << entry
24
+ end
25
+ unless updated
26
+ entry = Archive::Zip::Entry::File.new(path_name)
27
+ entry.file_data = IO::LikeHelpers::IOWrapper.new(StringIO.new(content))
28
+ if mtime
29
+ entry.mtime = mtime
30
+ end
31
+ z_out << entry
36
32
  end
37
33
  end
38
34
  end
@@ -8,7 +8,7 @@ module EPUB
8
8
  if @archive
9
9
  @archive.add_or_replace_buffer path_name, content
10
10
  else
11
- open {|container| container.write(path_name, content)}
11
+ open {|container| container.write(path_name, content, mtime: mtime)}
12
12
  end
13
13
  end
14
14
  end
@@ -14,10 +14,10 @@ module EPUB
14
14
  'unique-identifier' => unique_identifier.id
15
15
  }
16
16
  [
17
- ['dir', dir],
18
- ['id', id],
19
- ['xml:lang', xml_lang],
20
- ['prefix', prefix.reduce('') {|attr, (pfx, iri)| [attr, [pfx, iri].join(':')].join(' ')}]
17
+ ['dir', dir],
18
+ ['id', id],
19
+ ['xml:lang', xml_lang],
20
+ ['prefix', prefix.collect {|pfx, iri| [pfx, iri].join(": ")}.join("\n")]
21
21
  ].each do |(name, value)|
22
22
  next if value.nil? or value.empty?
23
23
  attrs[name] = value
@@ -1,5 +1,5 @@
1
1
  module EPUB
2
2
  module Maker
3
- VERSION = "0.1.8"
3
+ VERSION = "0.2.0"
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,14 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: epub-maker
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.8
4
+ version: 0.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - KITAITI Makoto
8
- autorequire:
9
8
  bindir: bin
10
9
  cert_chain: []
11
- date: 2023-11-22 00:00:00.000000000 Z
10
+ date: 1980-01-02 00:00:00.000000000 Z
12
11
  dependencies:
13
12
  - !ruby/object:Gem::Dependency
14
13
  name: epub-parser
@@ -44,14 +43,14 @@ dependencies:
44
43
  requirements:
45
44
  - - ">="
46
45
  - !ruby/object:Gem::Version
47
- version: '0'
46
+ version: 0.13.0
48
47
  type: :runtime
49
48
  prerelease: false
50
49
  version_requirements: !ruby/object:Gem::Requirement
51
50
  requirements:
52
51
  - - ">="
53
52
  - !ruby/object:Gem::Version
54
- version: '0'
53
+ version: 0.13.0
55
54
  - !ruby/object:Gem::Dependency
56
55
  name: rake
57
56
  requirement: !ruby/object:Gem::Requirement
@@ -108,6 +107,20 @@ dependencies:
108
107
  - - ">="
109
108
  - !ruby/object:Gem::Version
110
109
  version: '0'
110
+ - !ruby/object:Gem::Dependency
111
+ name: zipruby
112
+ requirement: !ruby/object:Gem::Requirement
113
+ requirements:
114
+ - - ">="
115
+ - !ruby/object:Gem::Version
116
+ version: '0'
117
+ type: :development
118
+ prerelease: false
119
+ version_requirements: !ruby/object:Gem::Requirement
120
+ requirements:
121
+ - - ">="
122
+ - !ruby/object:Gem::Version
123
+ version: '0'
111
124
  - !ruby/object:Gem::Dependency
112
125
  name: rubyzip
113
126
  requirement: !ruby/object:Gem::Requirement
@@ -283,7 +296,6 @@ files:
283
296
  homepage: http://www.rubydoc.info/gems/epub-maker
284
297
  licenses: []
285
298
  metadata: {}
286
- post_install_message:
287
299
  rdoc_options: []
288
300
  require_paths:
289
301
  - lib
@@ -298,8 +310,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
298
310
  - !ruby/object:Gem::Version
299
311
  version: '0'
300
312
  requirements: []
301
- rubygems_version: 3.4.22
302
- signing_key:
313
+ rubygems_version: 3.6.7
303
314
  specification_version: 4
304
315
  summary: EPUB Maker
305
316
  test_files: