epuber 0.7.3 → 0.8.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.
Files changed (67) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +1 -2
  3. data/README.md +2 -1
  4. data/epuber.gemspec +13 -15
  5. data/lib/epuber/book/contributor.rb +0 -1
  6. data/lib/epuber/book/file_request.rb +1 -1
  7. data/lib/epuber/book/target.rb +20 -23
  8. data/lib/epuber/book/toc_item.rb +2 -4
  9. data/lib/epuber/book.rb +19 -19
  10. data/lib/epuber/checker/bookspec_checker.rb +26 -0
  11. data/lib/epuber/checker/text_checker.rb +2 -1
  12. data/lib/epuber/checker.rb +16 -2
  13. data/lib/epuber/checker_transformer_base.rb +2 -5
  14. data/lib/epuber/command/build.rb +34 -24
  15. data/lib/epuber/command/init.rb +23 -23
  16. data/lib/epuber/command/server.rb +2 -2
  17. data/lib/epuber/command.rb +17 -20
  18. data/lib/epuber/compiler/compilation_context.rb +10 -8
  19. data/lib/epuber/compiler/file_database.rb +0 -2
  20. data/lib/epuber/compiler/file_finders/abstract.rb +33 -23
  21. data/lib/epuber/compiler/file_finders/imaginary.rb +40 -35
  22. data/lib/epuber/compiler/file_resolver.rb +77 -88
  23. data/lib/epuber/compiler/file_stat.rb +4 -4
  24. data/lib/epuber/compiler/file_types/abstract_file.rb +3 -4
  25. data/lib/epuber/compiler/file_types/bade_file.rb +13 -7
  26. data/lib/epuber/compiler/file_types/coffee_script_file.rb +1 -1
  27. data/lib/epuber/compiler/file_types/generated_file.rb +1 -1
  28. data/lib/epuber/compiler/file_types/image_file.rb +4 -2
  29. data/lib/epuber/compiler/file_types/nav_file.rb +0 -1
  30. data/lib/epuber/compiler/file_types/opf_file.rb +0 -1
  31. data/lib/epuber/compiler/file_types/source_file.rb +8 -3
  32. data/lib/epuber/compiler/file_types/xhtml_file.rb +67 -13
  33. data/lib/epuber/compiler/generator.rb +1 -2
  34. data/lib/epuber/compiler/meta_inf_generator.rb +1 -1
  35. data/lib/epuber/compiler/nav_generator.rb +5 -6
  36. data/lib/epuber/compiler/opf_generator.rb +22 -23
  37. data/lib/epuber/compiler/problem.rb +12 -21
  38. data/lib/epuber/compiler/xhtml_processor.rb +61 -31
  39. data/lib/epuber/compiler.rb +66 -19
  40. data/lib/epuber/config.rb +13 -7
  41. data/lib/epuber/dsl/attribute.rb +16 -17
  42. data/lib/epuber/dsl/attribute_support.rb +3 -3
  43. data/lib/epuber/dsl/object.rb +18 -15
  44. data/lib/epuber/dsl/tree_object.rb +2 -3
  45. data/lib/epuber/epubcheck.rb +15 -0
  46. data/lib/epuber/helper.rb +0 -1
  47. data/lib/epuber/lockfile.rb +7 -9
  48. data/lib/epuber/plugin.rb +1 -2
  49. data/lib/epuber/ruby_extensions/match_data.rb +1 -1
  50. data/lib/epuber/ruby_extensions/thread.rb +1 -0
  51. data/lib/epuber/server/base.styl +0 -1
  52. data/lib/epuber/server/basic.styl +1 -30
  53. data/lib/epuber/server/handlers.rb +1 -1
  54. data/lib/epuber/server.rb +67 -66
  55. data/lib/epuber/third_party/bower.rb +5 -5
  56. data/lib/epuber/transformer/text_transformer.rb +4 -2
  57. data/lib/epuber/transformer.rb +2 -2
  58. data/lib/epuber/user_interface.rb +49 -38
  59. data/lib/epuber/vendor/hash_binding.rb +9 -2
  60. data/lib/epuber/vendor/ruby_templater.rb +1 -5
  61. data/lib/epuber/vendor/version.rb +10 -10
  62. data/lib/epuber/version.rb +1 -1
  63. metadata +89 -61
  64. data/lib/epuber/server/fonts/AvenirNext/AvenirNext-Bold.ttf +0 -0
  65. data/lib/epuber/server/fonts/AvenirNext/AvenirNext-BoldItalic.ttf +0 -0
  66. data/lib/epuber/server/fonts/AvenirNext/AvenirNext-Italic.ttf +0 -0
  67. data/lib/epuber/server/fonts/AvenirNext/AvenirNext-Regular.ttf +0 -0
@@ -8,7 +8,7 @@ require_relative 'command'
8
8
 
9
9
  module Epuber
10
10
  class UserInterface
11
- Location = Struct.new(:path, :lineno)
11
+ Location = Struct.new(:path, :lineno, :column, keyword_init: true)
12
12
 
13
13
  class << self
14
14
  # @return [Epuber::Command]
@@ -35,7 +35,10 @@ module Epuber
35
35
  def self.error(message, location: nil)
36
36
  _clear_processing_line_for_new_output do
37
37
  $stdout.puts(_format_message(:error, message, location: location))
38
- _print_backtrace(location.try(:backtrace_locations) || message.try(:backtrace_locations) || caller_locations, location: location) if current_command && current_command.verbose?
38
+ if current_command&.verbose?
39
+ _print_backtrace(location.try(:backtrace_locations) || message.try(:backtrace_locations) || caller_locations,
40
+ location: location)
41
+ end
39
42
  end
40
43
  end
41
44
 
@@ -48,10 +51,6 @@ module Epuber
48
51
  end
49
52
  end
50
53
 
51
-
52
-
53
-
54
-
55
54
  # @param [#to_s] problem some problem, object just have to know to convert self into string with method #to_s
56
55
  #
57
56
  def self.print_processing_problem(problem)
@@ -63,16 +62,16 @@ module Epuber
63
62
  # @param [String] info_text
64
63
  #
65
64
  def self.print_processing_debug_info(info_text)
66
- if current_command && current_command.verbose?
67
- _clear_processing_line_for_new_output do
68
- message = if @current_file.nil?
69
- "▸ #{info_text}"
70
- else
71
- "▸ #{@current_file.source_path}: #{info_text}"
72
- end
73
-
74
- $stdout.puts(message.ansi.send(_color_from_level(:debug)))
75
- end
65
+ return unless current_command&.verbose?
66
+
67
+ _clear_processing_line_for_new_output do
68
+ message = if @current_file.nil?
69
+ "▸ #{info_text}"
70
+ else
71
+ "▸ #{@current_file.source_path}: #{info_text}"
72
+ end
73
+
74
+ $stdout.puts(message.ansi.send(_color_from_level(:debug)))
76
75
  end
77
76
  end
78
77
 
@@ -107,14 +106,18 @@ module Epuber
107
106
  @current_file = nil
108
107
  end
109
108
 
109
+ def self.puts(message)
110
+ _clear_processing_line_for_new_output do
111
+ $stdout.puts(message)
112
+ end
113
+ end
114
+
110
115
  # @param [Compiler::FileTypes::AbstractFile] file
111
116
  # @param [String] step_name
112
117
  # @param [Fixnum] time
113
118
  #
114
119
  def self.print_step_processing_time(step_name, time = nil)
115
- if !current_command || !current_command.debug_steps_times
116
- return yield
117
- end
120
+ return yield if !current_command || !current_command.debug_steps_times
118
121
 
119
122
  remove_processing_file_line
120
123
 
@@ -137,8 +140,6 @@ module Epuber
137
140
  returned_value
138
141
  end
139
142
 
140
- private
141
-
142
143
  def self._clear_processing_line_for_new_output
143
144
  last_line = remove_processing_file_line
144
145
 
@@ -154,12 +155,12 @@ module Epuber
154
155
  #
155
156
  def self._color_from_level(level)
156
157
  case level
157
- when :error; :red
158
- when :warning; :yellow
159
- when :normal; :white
160
- when :debug; :blue
161
- else
162
- raise "Unknown output level #{level}"
158
+ when :error then :red
159
+ when :warning then :yellow
160
+ when :normal then :white
161
+ when :debug then :blue
162
+ else
163
+ raise "Unknown output level #{level}"
163
164
  end
164
165
  end
165
166
 
@@ -170,13 +171,13 @@ module Epuber
170
171
  def self._location_from_obj(obj)
171
172
  case obj
172
173
  when ::Thread::Backtrace::Location
173
- Location.new(obj.path, obj.lineno)
174
+ Location.new(path: obj.path, lineno: obj.lineno)
174
175
  when ::Nokogiri::XML::Node
175
- Location.new(obj.document.file_path, obj.line)
176
+ Location.new(path: obj.document.file_path, lineno: obj.line)
176
177
  when Location
177
178
  obj
178
179
  when Epuber::Compiler::FileTypes::AbstractFile
179
- Location.new(obj.source_path, nil)
180
+ Location.new(path: obj.source_path)
180
181
  end
181
182
  end
182
183
 
@@ -191,12 +192,22 @@ module Epuber
191
192
 
192
193
  comps = []
193
194
  comps << message.to_s
194
- if !location.nil? && !(message.is_a?(Epuber::Compiler::Problem) || message.is_a?(Epuber::Checker::TextChecker::MatchProblem))
195
- if location.lineno
196
- comps << " (in file #{location.path} line #{location.lineno})"
197
- else
198
- comps << " (in file #{location.path})"
199
- end
195
+ message_already_formatted = (
196
+ message.is_a?(Epuber::Compiler::Problem) || message.is_a?(Epuber::Checker::TextChecker::MatchProblem)
197
+ )
198
+ if !location.nil? && !message_already_formatted
199
+ path = location.path
200
+
201
+ # calculate relative path when path is absolute and in project
202
+ path = path[Config.instance.project_path.size + 1..-1] if path.start_with?(Config.instance.project_path)
203
+
204
+ line_parts = [
205
+ " (in file #{path}",
206
+ ]
207
+ line_parts << "line #{location.lineno}" if location.lineno
208
+ line_parts << "column #{location.column}" if location.column
209
+
210
+ comps << "#{line_parts.join(' ')})"
200
211
  end
201
212
 
202
213
  comps.join("\n").ansi.send(_color_from_level(level))
@@ -209,13 +220,13 @@ module Epuber
209
220
  #
210
221
  def self._format_backtrace(locations, location: nil)
211
222
  index = locations.index(location) || 0
212
- locations[index, locations.size].map { |loc| loc.to_s }
223
+ locations[index, locations.size].map(&:to_s)
213
224
  end
214
225
 
215
226
  # @param [Thread::Backtrace::Location] location location of the error
216
227
  #
217
228
  def self._print_backtrace(locations, location: nil)
218
- puts(_format_backtrace(locations, location: location)) if current_command.verbose?
229
+ $stdout.puts(_format_backtrace(locations, location: location)) if current_command.verbose?
219
230
  end
220
231
  end
221
232
 
@@ -8,19 +8,26 @@ module Epuber
8
8
  @vars = vars
9
9
  end
10
10
 
11
+ # @return [Boolean]
12
+ #
13
+ def respond_to_missing?(name, _include_private = false)
14
+ @vars.key?(name) || super
15
+ end
16
+
11
17
  # @param [String] name
12
18
  #
13
19
  def method_missing(name)
14
20
  raise NameError, "Not found value for key #{name}" unless @vars.key?(name)
21
+
15
22
  @vars[name]
16
23
  end
17
24
 
18
- # rubocop:disable Style/AccessorMethodName
25
+ # rubocop:disable Naming/AccessorMethodName
19
26
 
20
27
  def get_binding
21
28
  binding
22
29
  end
23
30
 
24
- # rubocop:enable Style/AccessorMethodName
31
+ # rubocop:enable Naming/AccessorMethodName
25
32
  end
26
33
  end
@@ -1,7 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # rubocop:disable Lint/Eval
4
-
5
3
  require_relative 'hash_binding'
6
4
 
7
5
  module Epuber
@@ -62,9 +60,7 @@ module Epuber
62
60
  def render
63
61
  hash_binding = HashBinding.new(locals)
64
62
  eval_string = %(%(#{source_text}))
65
- eval(eval_string, hash_binding.get_binding)
63
+ eval(eval_string, hash_binding.get_binding) # rubocop:disable Security/Eval
66
64
  end
67
65
  end
68
66
  end
69
-
70
- # rubocop:enable Lint/Eval
@@ -2,7 +2,7 @@
2
2
 
3
3
  # Most of this code is taken from github.com/CocoaPods/Core/blob/master/lib/cocoapods-core/vendor/version.rb
4
4
 
5
- def is_number(other)
5
+ def number?(other)
6
6
  other.is_a?(Numeric) || other.is_a?(Integer) || other.is_a?(Float)
7
7
  end
8
8
 
@@ -10,7 +10,7 @@ module Epuber
10
10
  class Version
11
11
  include Comparable
12
12
 
13
- VERSION_RE ||= /\A[0-9]+(\.[0-9a-zA-Z]+)*\z/
13
+ VERSION_RE ||= /\A[0-9]+(\.[0-9a-zA-Z]+)*\z/.freeze
14
14
 
15
15
  # True if the +version+ string matches RubyGems' requirements.
16
16
  #
@@ -18,15 +18,13 @@ module Epuber
18
18
  version.to_s =~ VERSION_RE
19
19
  end
20
20
 
21
- attr_reader :version, :segments
21
+ attr_reader :version
22
22
 
23
23
 
24
24
  # @param [String, Numeric] version input primitive value for version
25
25
  #
26
26
  def initialize(version)
27
- unless self.class.correct?(version)
28
- raise StandardError, "Malformed version number string #{version}"
29
- end
27
+ raise StandardError, "Malformed version number string #{version}" unless self.class.correct?(version)
30
28
 
31
29
  @version = version.to_s.strip
32
30
  end
@@ -42,7 +40,7 @@ module Epuber
42
40
  # @return [String]
43
41
  #
44
42
  def to_s
45
- "#{segments.join('.')}"
43
+ segments.join('.').to_s
46
44
  end
47
45
 
48
46
  # Compares this version with +other+ returning -1, 0, or 1 if the
@@ -53,6 +51,7 @@ module Epuber
53
51
  #
54
52
  def <=>(other)
55
53
  return unless other.is_a?(Version) || other.is_a?(String) || other.is_a?(Float) || other.is_a?(Integer)
54
+
56
55
  other = other.is_a?(Version) ? other : Version.new(other)
57
56
 
58
57
  return 0 if @version == other.version
@@ -67,12 +66,13 @@ module Epuber
67
66
  i = 0
68
67
 
69
68
  while i <= limit
70
- lhs, rhs = lhsegments[i] || 0, rhsegments[i] || 0
69
+ lhs = lhsegments[i] || 0
70
+ rhs = rhsegments[i] || 0
71
71
  i += 1
72
72
 
73
73
  next if lhs == rhs
74
- return -1 if lhs.is_a?(String) && is_number(rhs)
75
- return 1 if is_number(lhs) && rhs.is_a?(String)
74
+ return -1 if lhs.is_a?(String) && number?(rhs)
75
+ return 1 if number?(lhs) && rhs.is_a?(String)
76
76
 
77
77
  return lhs <=> rhs
78
78
  end
@@ -1,7 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Epuber
4
- VERSION = '0.7.3'
4
+ VERSION = '0.8.0'
5
5
 
6
6
  HOME_URL = 'https://github.com/epuber-io/epuber'
7
7
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: epuber
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.7.3
4
+ version: 0.8.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Roman Kříž
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-01-25 00:00:00.000000000 Z
11
+ date: 2023-11-19 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activesupport
@@ -45,27 +45,21 @@ dependencies:
45
45
  - !ruby/object:Gem::Version
46
46
  version: '2.7'
47
47
  - !ruby/object:Gem::Dependency
48
- name: nokogiri
48
+ name: claide
49
49
  requirement: !ruby/object:Gem::Requirement
50
50
  requirements:
51
51
  - - "~>"
52
52
  - !ruby/object:Gem::Version
53
- version: '1.8'
54
- - - ">="
55
- - !ruby/object:Gem::Version
56
- version: 1.8.2
53
+ version: '1.0'
57
54
  type: :runtime
58
55
  prerelease: false
59
56
  version_requirements: !ruby/object:Gem::Requirement
60
57
  requirements:
61
58
  - - "~>"
62
59
  - !ruby/object:Gem::Version
63
- version: '1.8'
64
- - - ">="
65
- - !ruby/object:Gem::Version
66
- version: 1.8.2
60
+ version: '1.0'
67
61
  - !ruby/object:Gem::Dependency
68
- name: mime-types
62
+ name: listen
69
63
  requirement: !ruby/object:Gem::Requirement
70
64
  requirements:
71
65
  - - "~>"
@@ -79,33 +73,39 @@ dependencies:
79
73
  - !ruby/object:Gem::Version
80
74
  version: '3.0'
81
75
  - !ruby/object:Gem::Dependency
82
- name: claide
76
+ name: mime-types
83
77
  requirement: !ruby/object:Gem::Requirement
84
78
  requirements:
85
79
  - - "~>"
86
80
  - !ruby/object:Gem::Version
87
- version: '1.0'
81
+ version: '3.0'
88
82
  type: :runtime
89
83
  prerelease: false
90
84
  version_requirements: !ruby/object:Gem::Requirement
91
85
  requirements:
92
86
  - - "~>"
93
87
  - !ruby/object:Gem::Version
94
- version: '1.0'
88
+ version: '3.0'
95
89
  - !ruby/object:Gem::Dependency
96
- name: listen
90
+ name: nokogiri
97
91
  requirement: !ruby/object:Gem::Requirement
98
92
  requirements:
99
93
  - - "~>"
100
94
  - !ruby/object:Gem::Version
101
- version: '3.0'
95
+ version: '1.8'
96
+ - - ">="
97
+ - !ruby/object:Gem::Version
98
+ version: 1.8.2
102
99
  type: :runtime
103
100
  prerelease: false
104
101
  version_requirements: !ruby/object:Gem::Requirement
105
102
  requirements:
106
103
  - - "~>"
107
104
  - !ruby/object:Gem::Version
108
- version: '3.0'
105
+ version: '1.8'
106
+ - - ">="
107
+ - !ruby/object:Gem::Version
108
+ version: 1.8.2
109
109
  - !ruby/object:Gem::Dependency
110
110
  name: os
111
111
  requirement: !ruby/object:Gem::Requirement
@@ -124,44 +124,56 @@ dependencies:
124
124
  name: sinatra
125
125
  requirement: !ruby/object:Gem::Requirement
126
126
  requirements:
127
- - - "~>"
127
+ - - ">="
128
128
  - !ruby/object:Gem::Version
129
129
  version: '2.0'
130
+ - - "<"
131
+ - !ruby/object:Gem::Version
132
+ version: '4.0'
130
133
  type: :runtime
131
134
  prerelease: false
132
135
  version_requirements: !ruby/object:Gem::Requirement
133
136
  requirements:
134
- - - "~>"
137
+ - - ">="
135
138
  - !ruby/object:Gem::Version
136
139
  version: '2.0'
140
+ - - "<"
141
+ - !ruby/object:Gem::Version
142
+ version: '4.0'
137
143
  - !ruby/object:Gem::Dependency
138
- name: sinatra-websocket
144
+ name: sinatra-contrib
139
145
  requirement: !ruby/object:Gem::Requirement
140
146
  requirements:
141
- - - "~>"
147
+ - - ">="
142
148
  - !ruby/object:Gem::Version
143
- version: '0.3'
149
+ version: '2.0'
150
+ - - "<"
151
+ - !ruby/object:Gem::Version
152
+ version: '4.0'
144
153
  type: :runtime
145
154
  prerelease: false
146
155
  version_requirements: !ruby/object:Gem::Requirement
147
156
  requirements:
148
- - - "~>"
157
+ - - ">="
149
158
  - !ruby/object:Gem::Version
150
- version: '0.3'
159
+ version: '2.0'
160
+ - - "<"
161
+ - !ruby/object:Gem::Version
162
+ version: '4.0'
151
163
  - !ruby/object:Gem::Dependency
152
- name: sinatra-contrib
164
+ name: sinatra-websocket
153
165
  requirement: !ruby/object:Gem::Requirement
154
166
  requirements:
155
167
  - - "~>"
156
168
  - !ruby/object:Gem::Version
157
- version: '2.0'
169
+ version: '0.3'
158
170
  type: :runtime
159
171
  prerelease: false
160
172
  version_requirements: !ruby/object:Gem::Requirement
161
173
  requirements:
162
174
  - - "~>"
163
175
  - !ruby/object:Gem::Version
164
- version: '2.0'
176
+ version: '0.3'
165
177
  - !ruby/object:Gem::Dependency
166
178
  name: thin
167
179
  requirement: !ruby/object:Gem::Requirement
@@ -180,16 +192,22 @@ dependencies:
180
192
  name: rmagick
181
193
  requirement: !ruby/object:Gem::Requirement
182
194
  requirements:
183
- - - "~>"
195
+ - - ">="
184
196
  - !ruby/object:Gem::Version
185
197
  version: '4.2'
198
+ - - "<"
199
+ - !ruby/object:Gem::Version
200
+ version: '6.0'
186
201
  type: :runtime
187
202
  prerelease: false
188
203
  version_requirements: !ruby/object:Gem::Requirement
189
204
  requirements:
190
- - - "~>"
205
+ - - ">="
191
206
  - !ruby/object:Gem::Version
192
207
  version: '4.2'
208
+ - - "<"
209
+ - !ruby/object:Gem::Version
210
+ version: '6.0'
193
211
  - !ruby/object:Gem::Dependency
194
212
  name: rubyzip
195
213
  requirement: !ruby/object:Gem::Requirement
@@ -208,36 +226,42 @@ dependencies:
208
226
  name: epubcheck-ruby
209
227
  requirement: !ruby/object:Gem::Requirement
210
228
  requirements:
211
- - - "~>"
229
+ - - ">="
212
230
  - !ruby/object:Gem::Version
213
231
  version: '4.0'
232
+ - - "<"
233
+ - !ruby/object:Gem::Version
234
+ version: '6.0'
214
235
  type: :runtime
215
236
  prerelease: false
216
237
  version_requirements: !ruby/object:Gem::Requirement
217
238
  requirements:
218
- - - "~>"
239
+ - - ">="
219
240
  - !ruby/object:Gem::Version
220
241
  version: '4.0'
242
+ - - "<"
243
+ - !ruby/object:Gem::Version
244
+ version: '6.0'
221
245
  - !ruby/object:Gem::Dependency
222
- name: epuber-stylus
246
+ name: bade
223
247
  requirement: !ruby/object:Gem::Requirement
224
248
  requirements:
225
249
  - - "~>"
226
250
  - !ruby/object:Gem::Version
227
- version: '1.1'
251
+ version: '0.3'
228
252
  - - ">="
229
253
  - !ruby/object:Gem::Version
230
- version: 1.1.1
254
+ version: 0.3.1
231
255
  type: :runtime
232
256
  prerelease: false
233
257
  version_requirements: !ruby/object:Gem::Requirement
234
258
  requirements:
235
259
  - - "~>"
236
260
  - !ruby/object:Gem::Version
237
- version: '1.1'
261
+ version: '0.3'
238
262
  - - ">="
239
263
  - !ruby/object:Gem::Version
240
- version: 1.1.1
264
+ version: 0.3.1
241
265
  - !ruby/object:Gem::Dependency
242
266
  name: coffee-script
243
267
  requirement: !ruby/object:Gem::Requirement
@@ -253,81 +277,87 @@ dependencies:
253
277
  - !ruby/object:Gem::Version
254
278
  version: '2.4'
255
279
  - !ruby/object:Gem::Dependency
256
- name: bade
280
+ name: epuber-stylus
257
281
  requirement: !ruby/object:Gem::Requirement
258
282
  requirements:
259
283
  - - "~>"
260
284
  - !ruby/object:Gem::Version
261
- version: '0.3'
285
+ version: '1.1'
262
286
  - - ">="
263
287
  - !ruby/object:Gem::Version
264
- version: 0.3.1
288
+ version: 1.1.1
265
289
  type: :runtime
266
290
  prerelease: false
267
291
  version_requirements: !ruby/object:Gem::Requirement
268
292
  requirements:
269
293
  - - "~>"
270
294
  - !ruby/object:Gem::Version
271
- version: '0.3'
295
+ version: '1.1'
272
296
  - - ">="
273
297
  - !ruby/object:Gem::Version
274
- version: 0.3.1
298
+ version: 1.1.1
275
299
  - !ruby/object:Gem::Dependency
276
- name: rspec
300
+ name: fakefs
277
301
  requirement: !ruby/object:Gem::Requirement
278
302
  requirements:
279
- - - "~>"
303
+ - - ">="
280
304
  - !ruby/object:Gem::Version
281
- version: '3.2'
305
+ version: '1.3'
306
+ - - "<"
307
+ - !ruby/object:Gem::Version
308
+ version: '3.0'
282
309
  type: :development
283
310
  prerelease: false
284
311
  version_requirements: !ruby/object:Gem::Requirement
285
312
  requirements:
286
- - - "~>"
313
+ - - ">="
287
314
  - !ruby/object:Gem::Version
288
- version: '3.2'
315
+ version: '1.3'
316
+ - - "<"
317
+ - !ruby/object:Gem::Version
318
+ version: '3.0'
289
319
  - !ruby/object:Gem::Dependency
290
- name: rubocop
320
+ name: rake
291
321
  requirement: !ruby/object:Gem::Requirement
292
322
  requirements:
293
323
  - - "~>"
294
324
  - !ruby/object:Gem::Version
295
- version: '1.14'
325
+ version: '13.0'
296
326
  type: :development
297
327
  prerelease: false
298
328
  version_requirements: !ruby/object:Gem::Requirement
299
329
  requirements:
300
330
  - - "~>"
301
331
  - !ruby/object:Gem::Version
302
- version: '1.14'
332
+ version: '13.0'
303
333
  - !ruby/object:Gem::Dependency
304
- name: rake
334
+ name: rspec
305
335
  requirement: !ruby/object:Gem::Requirement
306
336
  requirements:
307
337
  - - "~>"
308
338
  - !ruby/object:Gem::Version
309
- version: '13.0'
339
+ version: '3.2'
310
340
  type: :development
311
341
  prerelease: false
312
342
  version_requirements: !ruby/object:Gem::Requirement
313
343
  requirements:
314
344
  - - "~>"
315
345
  - !ruby/object:Gem::Version
316
- version: '13.0'
346
+ version: '3.2'
317
347
  - !ruby/object:Gem::Dependency
318
- name: fakefs
348
+ name: rubocop
319
349
  requirement: !ruby/object:Gem::Requirement
320
350
  requirements:
321
351
  - - "~>"
322
352
  - !ruby/object:Gem::Version
323
- version: '1.3'
353
+ version: '1.14'
324
354
  type: :development
325
355
  prerelease: false
326
356
  version_requirements: !ruby/object:Gem::Requirement
327
357
  requirements:
328
358
  - - "~>"
329
359
  - !ruby/object:Gem::Version
330
- version: '1.3'
360
+ version: '1.14'
331
361
  description:
332
362
  email:
333
363
  - samnung@gmail.com
@@ -348,6 +378,7 @@ files:
348
378
  - lib/epuber/book/target.rb
349
379
  - lib/epuber/book/toc_item.rb
350
380
  - lib/epuber/checker.rb
381
+ - lib/epuber/checker/bookspec_checker.rb
351
382
  - lib/epuber/checker/text_checker.rb
352
383
  - lib/epuber/checker_transformer_base.rb
353
384
  - lib/epuber/command.rb
@@ -388,6 +419,7 @@ files:
388
419
  - lib/epuber/dsl/attribute_support.rb
389
420
  - lib/epuber/dsl/object.rb
390
421
  - lib/epuber/dsl/tree_object.rb
422
+ - lib/epuber/epubcheck.rb
391
423
  - lib/epuber/helper.rb
392
424
  - lib/epuber/lockfile.rb
393
425
  - lib/epuber/plugin.rb
@@ -402,10 +434,6 @@ files:
402
434
  - lib/epuber/server/basic.styl
403
435
  - lib/epuber/server/book_content.styl
404
436
  - lib/epuber/server/default_cover.png
405
- - lib/epuber/server/fonts/AvenirNext/AvenirNext-Bold.ttf
406
- - lib/epuber/server/fonts/AvenirNext/AvenirNext-BoldItalic.ttf
407
- - lib/epuber/server/fonts/AvenirNext/AvenirNext-Italic.ttf
408
- - lib/epuber/server/fonts/AvenirNext/AvenirNext-Regular.ttf
409
437
  - lib/epuber/server/handlers.rb
410
438
  - lib/epuber/server/keyboard_control.coffee
411
439
  - lib/epuber/server/pages/book.bade
@@ -585,7 +613,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
585
613
  - !ruby/object:Gem::Version
586
614
  version: '0'
587
615
  requirements: []
588
- rubygems_version: 3.4.3
616
+ rubygems_version: 3.4.22
589
617
  signing_key:
590
618
  specification_version: 4
591
619
  summary: Epuber is simple tool to compile and pack source files into EPUB format.